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

एक स्ट्रिंग कैसे सम्मिलित करें जिसमें एक &शामिल है

मैं इसे भूलता रहता हूं और फिर से इस पर वापस आता हूं! मुझे लगता है कि अब तक प्रदान की गई प्रतिक्रियाओं का संयोजन सबसे अच्छा उत्तर है।

सबसे पहले, &sqlplus/sqldeveloper में चर उपसर्ग है, इसलिए समस्या - जब यह प्रकट होता है, तो यह एक चर नाम का हिस्सा होने की उम्मीद है।

SET DEFINE OFF इस तरह से sqlplus की व्याख्या करना बंद कर देगा।

लेकिन क्या होगा यदि आपको sqlplus चर और . का उपयोग करने की आवश्यकता है शाब्दिक और वर्ण?

  • वेरिएबल को काम करने के लिए आपको SET DEFINE ON की आवश्यकता है
  • और &के उपयोग से बचने के लिए ESCAPE ON करें।

उदा.

set define on
set escape on

define myvar=/forth

select 'back\\ \& &myvar' as swing from dual;

उत्पादन:

old   1: select 'back\\ \& &myvar' from dual
new   1: select 'back\ & /forth' from dual

SWING
--------------
back\ & /forth

यदि आप किसी भिन्न एस्केप वर्ण का उपयोग करना चाहते हैं:

set define on
set escape '#'

define myvar=/forth

select 'back\ #& &myvar' as swing from dual;

जब आप एक विशिष्ट एस्केप कैरेक्टर सेट करते हैं, तो आप 'SP2-0272:एस्केप कैरेक्टर अल्फ़ान्यूमेरिक या व्हाइटस्पेस नहीं हो सकते' देख सकते हैं। इसका शायद मतलब है कि आपके पास पहले से ही बचने वाला चरित्र परिभाषित है, और चीजें बेहद आत्म-संदर्भित हो जाती हैं। इस समस्या से बचने का सबसे साफ तरीका है कि पहले पलायन को बंद कर दिया जाए:

set escape off
set escape '#'


  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. Oracle में एक संख्या को प्रतिशत के रूप में प्रारूपित करें

  3. ओरेकल 11 जी में असीमित अक्षर कैसे स्टोर करते हैं?

  4. Oracle regexp_replace द्वारा अंतरिक्ष से अलग की गई सूची से डुप्लिकेट कैसे निकालें?

  5. Oracle में BLOB कॉलम में इमेज डेटा लोड हो रहा है