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

एक ksh चर में चयन परिणाम डालें

एक बुनियादी रूपरेखा के रूप में आप क्वेरी करने के लिए एक हेरेडोक के साथ SQL*Plus चला सकते हैं, और एक चर के लिए आउटपुट असाइन कर सकते हैं:

P_NUMBER=`sqlplus -s /nolog <<!EOF
connect username/password
whenever sqlerror exit failure
set pagesize 0
set feedback off
select your_value from your_table where your_key = 'something'; 
exit 0
!EOF`

बैकटिक्स में संलग्न करने से वेरिएबल को परिणाम मिलता है। $P_NUMBER तब आपकी क्वेरी को जो भी मूल्य मिलेगा (या एक त्रुटि संदेश यदि क्रेडेंशियल गलत थे, तो कहें)। यह मदद करता है यदि आप सुनिश्चित हैं कि क्वेरी बिल्कुल एक परिणाम लौटाएगी। आप $? . के साथ रिटर्न कोड का परीक्षण भी कर सकते हैं त्रुटियों को देखने के लिए, इससे पहले कि आप अपने चर का उपयोग करने का प्रयास करें।

-s . सहित फ़्लैग करना, फ़ीडबैक को बंद करना और पेजसाइज़ को शून्य पर सेट करना सामूहिक रूप से सभी शोर को दबा देता है ताकि आपको केवल परिणाम मिले और आपको बैनर, हेडिंग आदि को अलग न करना पड़े।

और अंत में मैंने /nolog . का उपयोग किया है और connect हेरेडोक के अंदर बयान ताकि क्रेडेंशियल प्रक्रिया सूची में प्रकट न हों, जो अक्सर अनदेखी की जाने वाली सुरक्षा समस्या है। यदि आप ऐसा नहीं करना चाहते हैं और क्रेडेंशियल्स को sqlplus username/passwd के रूप में रखें , आप -l जोड़ सकते हैं ध्वज ताकि यह केवल एक बार लॉग इन करने का प्रयास करे; अन्यथा अगर किसी कारण से लॉगिन विफल हो जाता है तो यह शेष हेरेडोक को आगे के प्रमाण-पत्रों के रूप में उपयोग करने का प्रयास करेगा, और लघु स्क्रिप्ट के साथ लटका हुआ प्रतीत हो सकता है।




  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. पीएल/एसक्यूएल के साथ उपयोगकर्ता इनपुट स्वीकार करने के लिए कैसे लूप करें?

  3. मैं Oracle XE उदाहरण के SID को कैसे बदल सकता हूँ?

  4. ORA-02019:दूरस्थ डेटाबेस के लिए कनेक्शन विवरण नहीं मिला

  5. ओरेकल फ़ंक्शन को कॉल करें जो PHP से सम्मिलित/अद्यतन करता है?