[एसक्यूएलप्लस](https://docs.oracle.com/cd/B19306_01/server.102/b14357/qstart.htm) एक इंटरैक्टिव टूल है जो हर आधुनिक Oracle इंस्टॉलेशन के साथ इंस्टॉल होता है। एसक्यूएल प्लस आपको Oracle के सामान्य दायरे से परे बैचों, स्क्रिप्ट्स और गणनाओं के साथ मानक डेटाबेस प्रश्नों से परे जाने की अनुमति देता है।
यह और भी संभव है, जैसा कि हम नीचे देखेंगे - टेक्स्ट फ़ाइलें जेनरेट करने के लिए, जैसे .csv
, किसी विशेष डेटाबेस क्वेरी के आउटपुट का उपयोग करते हुए।
एसक्यूएल*प्लस लॉन्च करना
आपके Oracle इंस्टॉलेशन के आधार पर, आपके पास SQL*Plus एप्लिकेशन चलाने के लिए कई अलग-अलग संस्करणों या "मोड" में से एक तक पहुंच हो सकती है।
SQL*Plus Command-line
यदि आप SQL*Plus Command-line
का उपयोग करना चाहते हैं , आप बस sqlplus
जारी करेंगे अपने खोल से आदेश:
$ sqlplus
यह आपको डिफ़ॉल्ट . से जोड़ने का प्रयास करेगा डेटाबेस और आपको स्वयं को प्रमाणित करने के लिए अपने क्रेडेंशियल दर्ज करने के लिए प्रेरित किया जाएगा।
घटना में आपको किसी भिन्न database
. से कनेक्ट करने की आवश्यकता है या किसी भिन्न user
. का उपयोग करें (schema
), अपने स्वयं के मूल्यों को आवश्यकतानुसार प्रतिस्थापित करते हुए निम्नलिखित का प्रयास करें:
$ sqlplus schema@//machine.domain:port/database
iSQL*Plus
यदि आपके पास इसकी पहुंच है, तो आप iSQL*Plus
. का उपयोग करना चाह सकते हैं , जो SQL*प्लस कमांड-लाइन टूल का ब्राउज़र-आधारित संस्करण है।
यह केवल iSQL*Plus URL
. पर जाकर पूरा किया जाता है आपके डेटाबेस और स्थापना के लिए। सटीक URL अलग-अलग होगा, लेकिन यह आमतौर पर निम्न प्रारूप में होता है:http://machine_name.domain:port/isqlplus
SQL*Plus for Windows
यदि आप Windows का उपयोग कर रहे हैं, तो SQL*Plus का एक Windows GUI संस्करण भी है, जिसे आमतौर पर आपके प्रारंभ मेनू से लॉन्च किया जा सकता है:Start > Programs > Oracle > Application Development > SQL Plus
।
किसी क्वेरी को फ़ाइल में आउटपुट करना
अब जब आप SQL*Plus से कनेक्ट हो गए हैं तो हम अपनी फ़ाइल बनाना शुरू कर सकते हैं।
एसक्यूएल*प्लस कॉन्फ़िगरेशन संशोधित करें
पहला कदम SET
. का उपयोग करके कुछ SQL*PLus सिस्टम सेटिंग्स को कॉन्फ़िगर करना है बयान।
इस उदाहरण के लिए, हम अपनी क्वेरी और फ़ाइल निर्माण से एक बार इन सेटिंग्स को मैन्युअल रूप से बदल देंगे, लेकिन यदि वांछित है, तो आप अपने User Profile
में विभिन्न सेटिंग्स के डिफ़ॉल्ट को बदल सकते हैं। , login.sql
. में स्थित है फ़ाइल।
set colsep ,
set headsep off
set pagesize 0
set trimspool on
पहली कुछ सेटिंग जिन्हें आप आमतौर पर बदलना नहीं चाहेंगे, लेकिन हम संक्षेप में बताएंगे कि प्रत्येक सेटिंग क्या हासिल करती है।
colsep
आपके स्तंभों को विभाजित करने के लिए उपयोग किया जाने वाला विभाजक वर्ण है।.csv
. के लिए फ़ाइल, यह एक साधारण अल्पविराम है।headsep
हेडर पंक्ति के लिए विभाजक वर्ण है (यदि आपको एक की आवश्यकता है)। इस उदाहरण में हम हेडर पंक्ति को आउटपुट नहीं कर रहे हैं, इसलिए हम इसेoff
छोड़ देंगे ।pagesize
"प्रति पृष्ठ" पंक्तियों की संख्या है। यह थोड़ी पुरातन सेटिंग है जो प्रति पृष्ठ बहुत अधिक पंक्तियों के बिना मुद्रण के लिए अभिप्रेत है।0
. के मान के साथ , हम पृष्ठों का उपयोग नहीं करते हैं क्योंकि हम किसी फ़ाइल को आउटपुट कर रहे हैं। यदि आपheader
. दिखाना चुनते हैं पंक्ति, सेट करेंpagesize
बहुत बड़ी संख्या में (क्वेरी में रिकॉर्ड परिणामों की अपेक्षित संख्या से अधिक), इसलिए आपकी शीर्षलेख पंक्ति "प्रति पृष्ठ" के बजाय केवल एक बार दिखाई देगी।trimspool
on
पर सेट करें बस पिछली खाली जगह को हटा देता है।
अब आपकी क्वेरी के आधार पर अंतिम दो सेटिंग्स को बदलना होगा।
set linesize #
set numwidth #
linesize
के लिए ,#
मान आपकी परिणामी क्वेरी में आउटपुट कॉलम की कुल संख्या होनी चाहिए।numwidth
संख्यात्मक मानों को आउटपुट करते समय उपयोग की जाने वाली कॉलम चौड़ाई (वर्ण रिक्त स्थान की संख्या) है।
स्पूल कमांड
नोट:SPOOL
आदेश अनुपलब्ध है ब्राउज़र-आधारित SQL*प्लस संस्करण में, iSQL*Plus
. iSQL*Plus का उपयोग करते हुए फ़ाइलें जेनरेट करने के लिए, आवश्यक वरीयता सेटिंग्स को सीधे फ़ाइल में आउटपुट करने के लिए बदलें।
हमारी सेटिंग्स को ध्यान में रखते हुए, अब हमें फ़ाइल को आउटपुट करने के लिए SQL*Plus बताना होगा। यह SPOOL
. का उपयोग करके पूरा किया जाता है बयान।
जबकि SPOOL
सक्रिय है , SQL*PLus किसी भी क्वेरी के आउटपुट को निर्दिष्ट फ़ाइल में संग्रहीत करेगा।
इसलिए, दर्ज करने के लिए अगला कमांड है SPOOL
:
spool file_path
थोड़ा आगे बढ़ते हुए, बाद में आपकी क्वेरी डाली गई है, आपको SPOOL
को भी रोकना होगा इसलिए फ़ाइल आउटपुट को spool off
. का उपयोग करके बंद कर दिया जाता है आदेश:
spool off
क्वेरी डालें
सेटिंग्स को संशोधित करने के बाद अंतिम चरण और SPOOL
चल रहा है अपनी क्वेरी डालने के लिए। हमारे सरल उदाहरण के लिए, हम अपनी books
. से सभी पुस्तकों को आउटपुट कर रहे हैं टेबल।
SELECT
title,
primary_author
FROM
books;
अपने क्वेरी स्टेटमेंट को बंद करने के लिए सेमी-कोलन को न भूलें, फिर उपरोक्त spool off
दर्ज करें। आदेश।
बस, आपने SQL*Plus का उपयोग करके अपनी क्वेरी के परिणामों के साथ एक नई टेक्स्ट फ़ाइल जेनरेट की है।
युक्ति:स्क्रिप्ट फ़ाइल का उपयोग करना
प्रत्येक पंक्ति को मैन्युअल रूप से दर्ज करने के बजाय, सभी सेटिंग्स को एक नई स्क्रिप्ट फ़ाइल में दर्ज करने का सुझाव दिया जाता है जिसे आप SQL*प्लस में एक ही कमांड में निष्पादित कर सकते हैं।
EDIT
. के साथ एक नई स्क्रिप्ट फ़ाइल बनाएं कथन:
EDIT file_name
अब पूरी स्क्रिप्ट कमांड लिस्ट को अपनी नई फाइल में पेस्ट करें और सेव करें। हमारी उदाहरण स्क्रिप्ट की पूरी सामग्री नीचे पाई जा सकती है।
set colsep ,
set headsep off
set pagesize 0
set trimspool on
set linesize 2
set numwidth 5
spool books.csv
SELECT
title,
primary_author
FROM
books;
spool off
स्क्रिप्ट को निष्पादित करने के लिए, बस @
. का उपयोग करें फ़ाइल नाम के बाद प्रतीक:
@file_name
आपकी स्क्रिप्ट निष्पादित की जानी चाहिए और .csv
फ़ाइल अपेक्षानुसार बनाई गई।