select to_date('25-DEC-2010') from dual;
ORA-01843: 不是有效的月份
這個問題的本質是系統不能識別英文的月簡寫,而能識別中文。
Oracle系統的語言配置主要保存在V$NLS_PARAMETERS數據字典視圖中。查詢該視圖關於語言的設置值。如下:
SQL> select * from v$nls_parameters where parameter like '%DATE%';
SQL> alter session set nls_date_language='american';
Session altered
修改後,參數的日期的語言設定更改如下:
然後,再執行
select to_date('25-DEC-2010') from dual;
結果就正常了