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

यह समझने में असमर्थ है कि कैसे मूल्य परोक्ष रूप से दिनांक स्वरूप में परिवर्तित किया गया

स्ट्रिंग-टू-डेट रूपांतरण नियम अतिरिक्त स्वरूपण नियमों की अनुमति दें (बिना किसी अन्य संशोधक को लागू किए)। तो:

  • MM MON . से भी मेल खाता है और MONTH;
  • MON MONTH matches से मेल खाता है (और इसके विपरीत);
  • RR RRRR से मेल खाता है; और
  • विराम चिह्न वैकल्पिक है।

तो:

SELECT TO_DATE( '10AUGUST2016', 'DD-MM-RR'    ) FROM DUAL UNION ALL
SELECT TO_DATE( '10AUGUST2016', 'DD-MON-RR'   ) FROM DUAL UNION ALL
SELECT TO_DATE( '10AUGUST2016', 'DD-MONTH-RR' ) FROM DUAL UNION ALL
SELECT TO_DATE( '10AUG2016',    'DD-MM-RR'    ) FROM DUAL UNION ALL
SELECT TO_DATE( '10AUG2016',    'DD-MON-RR'   ) FROM DUAL UNION ALL
SELECT TO_DATE( '10AUG2016',    'DD-MONTH-RR' ) FROM DUAL;

सभी दिनांक उत्पन्न करते हैं 2016-08-10T00:00:00

आप FX प्रारूप मॉडल

फिर:

DUAL से
SELECT TO_DATE( '10-AUGUST-2016', 'FXDD-MM-RR'    ) FROM DUAL;

देता है:ORA-01858: a non-numeric character was found where a numeric was expected और केवल वहीं मेल खाएगा जहां सटीक पैटर्न मिलान पाया जाता है (हालांकि RR अभी भी RRRR से मेल खाएगा )।

हां, ओरेकल परोक्ष रूप से TO_DATE( '10AUGUST2016', NLS_DATE_FORMAT ) का उपयोग कर रहा है रूपांतरण करने के लिए।

यदि आप उपयोग करते हैं:

ALTER SESSION SET NLS_DATE_FORMAT = 'FXDD-MM-RR';

तब आपका इंसर्ट विफल हो जाएगा।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Java.lang.ClassNotFoundException को कैसे हल करें:oracle.jdbc.driver.OracleDriver रनटाइम पर?

  2. Oracle - रेफरी कर्सर से एक विशिष्ट कॉलम का चयन करें

  3. Oracle 24 घंटे से अधिक प्रदर्शित करता है

  4. Phpinfo में कोई oci8 मॉड्यूल नहीं ()

  5. JSON बनाना और एक जटिल क्वेरी संपादित करना (oracle 11g)