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;