Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

SQLcl (Oracle) का उपयोग करते समय .txt फ़ाइल में क्वेरी परिणाम कैसे निर्यात करें

Oracle डेटाबेस को क्वेरी करते समय, आप SPOOL . का उपयोग कर सकते हैं SQLcl का उपयोग करते समय अपने क्वेरी परिणामों को टेक्स्ट फ़ाइल में निर्यात करने का आदेश।

उदाहरण

यहां एक उदाहरण दिया गया है जो पूरी तालिका को निर्यात करता है:

SPOOL '/Users/barney/data/regions.txt';
SELECT * FROM regions;
SPOOL off;

लाइन दर लाइन इसने क्या किया:

  • पहली पंक्ति में SPOOL का उपयोग किया गया है यह निर्दिष्ट करने के लिए आदेश दें कि आउटपुट फ़ाइल कहाँ लिखी जाएगी। /Users/barney/data/regions.txt . को बदलना सुनिश्चित करें आपके सिस्टम पर किसी स्थान पर, और एक उपयुक्त फ़ाइल नाम पर।
  • दूसरी पंक्ति में, मैंने SQL क्वेरी चलाई - जिसके परिणाम मैं निर्यात कर रहा हूं। इस मामले में, मैंने पूरे regions . का निर्यात किया टेबल.
  • अगला, मैं SPOOL बदल गया बंद।

यहाँ परिणामी फ़ाइल कैसी दिखती है:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

4 rows selected. 

मेरे मामले में, मेरा SQLFORMAT ansiconsole . पर सेट किया गया था , और इसलिए आउटपुट उसे दर्शाता है।

आप इसे उपयुक्त किसी भी प्रारूप में बदल सकते हैं।

परिणाम को एक प्रारूप में निर्यात करने का एक उदाहरण यहां दिया गया है जिसे sql*loader के साथ आयात फ़ाइल के रूप में उपयोग किया जा सकता है:

SET SQLFORMAT loader
SPOOL '/Users/barney/data/regions_loader.txt';
SELECT * FROM regions;
SPOOL off;
SET SQLFORMAT ansiconsole

परिणाम:

 1|"Europe"|
 2|"Americas"|
 3|"Asia"|
 4|"Middle East and Africa"|

4 rows selected. 

इस मामले में मैं SQLFORMAT . को भी रीसेट करता हूं ansiconsole पर वापस जाएं एक बार SPOOL ऑपरेशन पूरा हो गया था।

फ़ीडबैक निकालें

आप X rows selected SET FEEDBACK off :

SET SQLFORMAT ansiconsole
SET FEEDBACK off
SPOOL '/Users/barney/data/regions_no_feedback.txt';
SELECT * FROM regions;
SPOOL off;
SET FEEDBACK on

परिणाम:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

इस मामले में मैंने FEEDBACK को बदल दिया फ़ाइल निर्यात करने के बाद वापस चालू करें।

परिणाम जोड़ें

डिफ़ॉल्ट रूप से, SPOOL REPLACE . का उपयोग करता है , जो फ़ाइल को बदल देता है यदि वह पहले से मौजूद है।

हालांकि, हम APPEND . का उपयोग कर सकते हैं फ़ाइल में परिणाम जोड़ने का तर्क।

उदाहरण:

SET SQLFORMAT ansiconsole
SET FEEDBACK off
SPOOL '/Users/barney/data/regions_no_feedback.txt' APPEND;
SELECT * FROM regions;
SPOOL off;
SET FEEDBACK on

परिणामी फ़ाइल:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

इस उदाहरण ने परिणामों को उस फ़ाइल में जोड़ा जो पिछले उदाहरण में बनाई गई थी (और आबाद थी)। इसके परिणामस्वरूप फ़ाइल में परिणाम दोहराया गया।

मौजूदा फ़ाइल को अधिलेखित करें

हम REPLACE . का उपयोग कर सकते हैं नई क्वेरी के परिणामों के साथ मौजूदा फ़ाइल को अधिलेखित करने के लिए:

SET SQLFORMAT ansiconsole
SET FEEDBACK off
SPOOL '/Users/barney/data/regions_no_feedback.txt' REPLACE;
SELECT * FROM regions;
SPOOL off;
SET FEEDBACK on

परिणामी फ़ाइल:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

जैसा कि बताया गया है, REPLACE डिफ़ॉल्ट सेटिंग है, इसलिए हम इस तर्क को पूरी तरह से छोड़ सकते थे।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle डेटाटाइम फ़ंक्शंस (पूरी सूची)

  2. ऑरैकल में चेक बाधा का उपयोग कैसे करें

  3. ORA-12505, TNS:श्रोता को वर्तमान में कनेक्ट डिस्क्रिप्टर में दिए गए SID के बारे में पता नहीं है

  4. पीएल/एसक्यूएल सीखने के लिए विकास का माहौल तैयार करना

  5. NAME_IN Oracle D2k फ़ॉर्म में अंतर्निर्मित