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

Oracle यूनिकोड स्पूलिंग

सही सेटिंग्स के साथ आपकी स्क्रिप्ट SQL*Plus के साथ काम करती है। यहाँ मैंने इसका परीक्षण करने के लिए क्या किया:

  • (जाहिर है) आपके डेटाबेस को यूनिकोड का समर्थन करना चाहिए। यदि आवश्यक हो तो NVARCHAR2 का प्रयोग करें।
  • अपने क्लाइंट एप्लिकेशन को सही तरीके से सेटअप करें। सुनिश्चित करें कि आपका NLS_LANG चर सही ढंग से सेट है, इसे यूनिकोड का समर्थन करना चाहिए। मैंने अपना AMERICAN_ENGLISH.UTF8 . पर सेट किया है . जबकि SQL*Plus की डॉस विंडो सभी यूनिकोड वर्णों को प्रदर्शित नहीं करेगी, उन्हें फ़ाइल में सही ढंग से स्पूल किया जाएगा।
  • (स्पष्ट रूप से भी) सुनिश्चित करें कि स्पूल की गई फ़ाइल को पढ़ने वाला एप्लिकेशन इसे सही वर्ण सेट में खोलता है।

अब स्क्रिप्ट के लिए:

SQL> select * from v$nls_parameters where parameter = 'NLS_CHARACTERSET';

PARAMETER          VALUE
------------------ ------
NLS_CHARACTERSET   UTF8

SQL> create table street_points (data varchar2(10));

Table created

SQL> INSERT INTO street_points VALUES (chr(53401)||chr(53398));

1 row inserted

यह रूसी अक्षरों को सम्मिलित करेगा ЙЖ

SQL> SPOOL STREET_POINT_THR.BQSV
SQL> SELECT * FROM STREET_POINTS;
ðÖðû
SQL> SPOOL OFF

सही कैरेक्टर सेट (UTF-8) के साथ टेक्स्ट एडिटर (मेरे मामले में jEdit) के साथ खोली गई फ़ाइल, वर्णों को सही ढंग से प्रदर्शित करती है।



  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. COSH() Oracle में फंक्शन

  3. मान्य नहीं कर सकता, नोवालिडेट विकल्प के साथ

  4. Oracle में विभिन्न प्रकार के PL/SQL संग्रह का उपयोग करने का उद्देश्य

  5. ORA 00904 त्रुटि:अमान्य पहचानकर्ता