Oracle數據庫默認情況下,會以DD-MON-YY的形式顯示日期,其中DD是天數,MON是月份的前三個字母(大寫),而YY是年份的最後兩位。數據庫實際上會為年份存儲4位數字,但是默認情況下只會顯示最後兩位。
一個簡單的語句:
SELECT TO_DATE('21-MAY-2014') FROM dual;
引發ORA-01843:無效的月份!
PL/SQL Developer錯誤:
命令行:
vc/Uyr6jqE9yYWNsZdaqtcDO0sPHv827p7bLtcS7t76zzqrW0M7Eu7e+s6Osy/nS1Nequ7vOqtbQzsQmIzI2Njg0O8q9z9TKvqOpo6y2+M7Sw8dTUUzT777ky/nV67bUtcS7t76zysfTos7Eu7e+s6Ostb3V4sDvtO3O89LRvq263MP3z9TAsqGjPC9wPgo8cD48YnI+CjwvcD4KPHA+PHN0cm9uZz694r721q61wKOozbPSu8jVxtq1xNPv0dSjqaO6PC9zdHJvbmc+PC9wPgo8YmxvY2txdW90ZT4KPHA+zbPSu9bQzsSjuiBTRUxFQ1QgVE9fREFURSg="21-5月-2014') FROM dual;
統一英文:
1、修改客戶端會話日期的語言: ALTER SESSION SET nls_date_language='american';
2、成功執行: SELECT TO_DATE('21-MAY-2014') FROM dual;