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

oracle 11g में NLS_DATE_FORMAT को कहाँ बदलें?

यदि आप किसी प्रक्रिया में NLS पैरामीटर बदलना चाहते हैं तो आप DBMS_SESSION.SET_NLS . इस तरह दिखने वाले वातावरण को देखते हुए:

SQL> select value
  2    from nls_session_parameters
  3   where parameter = 'NLS_DATE_FORMAT';

VALUE
------------------------------------------

DD-MON-RR

SQL> select sysdate from dual;

SYSDATE
---------
25-NOV-14

प्रक्रिया को क्रियान्वित करने से प्रारूप बदल जाता है (तीन एकल उद्धरणों पर ध्यान दें):

SQL> begin
  2     dbms_session.set_nls('nls_date_format', '''yyyy-mm-dd''');
  3  end;
  4  /

PL/SQL procedure successfully completed.

SQL> select sysdate from dual;

SYSDATE
----------
2014-11-25

वैकल्पिक रूप से आप डायनेमिक SQL, EXECUTE IMMEDIATE , उदाहरण के लिए:

SQL> begin
  2     execute immediate 'alter session set nls_date_format = ''yyyy-mm''';
  3  end;
  4  /

PL/SQL procedure successfully completed.

SQL> select sysdate from dual;

SYSDATE
-------
2014-11

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




  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 SQL क्वेरी xpath में विशिष्ट स्थिति का उपयोग करके विशिष्ट घटना को पुनः प्राप्त करने के लिए?

  2. Oracle Apps R12 में SSL या TLS को सक्षम करना

  3. हल्का खरीद साहसिक

  4. XAMPP का उपयोग करके अपरिभाषित फ़ंक्शन oci_connect () के लिए अटक कॉल

  5. [ए] Oracle.ManagedDataAccess.Client.OracleParameter को [B] Oracle.ManagedDataAccess.Client.OracleParameter पर नहीं डाला जा सकता है