当在sqlplus或者在plsql上执行插入月份的语句时,比如:
insert into emp_test values(1002 , '刘苍松' , 'Analyst' ,8000 , 1000 , '01-APR-11' , 1001, 10) ;
如果报ORA-01843无效的月份,那就说明是当时的运行环境是中文的,它不认识APR这个月份,这时候有两个解决方式
第一个,执行 alter session set nls_date_language='american' 然后再执行上面的插入操作的话,就不会出错了,但是有一个缺点就是这只对本次会话有效,如果关了客户端重新进入还是会报错
第二个,把月份改成汉字,比如:
insert into emp_test values(1002 , '刘苍松' , 'Analyst' ,8000 , 1000 , '01-四月-11' , 1001, 10) ;