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

एक समय में शेल स्क्रिप्ट में दो ओरेकल डीबी के खिलाफ एक एसक्यूएल क्वेरी निष्पादित करने और सीएसवी फाइलों को अलग करने के लिए डेटा निर्यात करने की आवश्यकता है

एक दिया गया एसक्लप्लस सत्र एक समय में केवल एक डीबी से कनेक्ट हो सकता है, इसलिए आपकी आवश्यकता 'उसी समय' अनिवार्य रूप से एक गैर-स्टार्टर है। यदि 'एक ही समय' का वास्तव में अर्थ है 'क्रमिक रूप से, उसी स्क्रिप्ट में, तो आप अपनी कनेक्ट स्ट्रिंग को ठीक करने के लिए वापस आ गए हैं। और उस पर आपके पास 'शुरुआती मेट्स गेम की तुलना में अधिक त्रुटियां हैं' (किसी भी NY मेट्स प्रशंसकों के लिए माफी के साथ)।

सबसे पहले, आपकी स्क्रिप्ट इंगित करती है कि आपका sqlplus कमांड आपके शेल प्रोसेसर और 'सेट -x' के विनिर्देशन के बाद पहला वास्तविक कमांड है। फिर भी आप उपयोगकर्ता नाम, पासवर्ड और कनेक्शन नाम के प्रतिस्थापन के रूप में पर्यावरण चर का भारी उपयोग करते हैं - उन चरों को कभी भी सेट किए बिना।

दूसरा, कमांड लाइन में '&' का आपका उपयोग मेरे और पार्सर दोनों के लिए पूरी तरह से भ्रमित करने वाला है।

तीसरा, आपको एसक्यूएल स्क्रिप्ट के संदर्भ में '@' के साथ अपना संदर्भ देना होगा।

चौथा, कमांड लाइन में तत्वों का आपका क्रम गलत है।

इसे आजमाएं

#!/bin/bash
orauser1=<supply user name here>
orapw2=<supply password here>
oradb_1=<supply connection name of first database>
#
orauser1=<supply user name here>
orapw2=<supply password here>
oradb_1=<supply connection name of first database>
#
Targetdirectory=<supply value here>
#
sqlplus -S ${orauser1}/${orapw1}@${oradb_1} @Datesquery.sql >> ${Targetdirectory}/csvfile1.csv

sqlplus -S ${orauser2}/${orapw2}@${oradb_1} @Datesquery.sql >> ${Targetdirectory}/csvfile2.csv


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ओरेकल में अधिकतम (पंक्तिबद्ध) क्या है?

  2. Oracle 12c मूल्यों द्वारा पहचाना गया

  3. PLSQL बेनामी ब्लॉक पूरा होने पर कोई आउटपुट क्यों नहीं?

  4. जेपीए 2.0 Oracle दिनांक में शून्य समय है

  5. जावा में SQL*प्लस से Oracle को SYS के रूप में कैसे कनेक्ट करें