Insert语句出错
insert into test_person values
( 'CA ', 'Charlene ', 'Atlas ', '01-FEB-2002 ');
ERROR 位于第 2 行:
ORA-01843: 无效的月份
怎么回事?
最后的日期字段的数据类型为date
------解决方案--------------------select to_date( '2007/02/02 ', 'yyyy/mm/dd ') from dual;
结果是:2007-02-02
你可以把2007/02/02换成其他的形式,能转化就可以写进去
比如换成:2007-02-02,20070202,02-02-2007
需要注意的是后面的yyyy/mm/dd要对应前面的 /可以换成-
------解决方案--------------------lz的写法,插入的是英文日期,那么你的ORACLE字符集的类型必须是NLS_DATE_LANGUAGE = American ,这时可以插入:
insert into t values ( 'CA ', 'Charlene ', 'Atlas ',to_date( '01-FEB-2002 ', 'dd-mon-yyyy '));
一般我们插入日期用insert into t values(to_date( '2002-02-01 ', 'yyyy-mm-dd '))方便。