创建表
create table insertdate(
todaydate date
);成功
插入数据
insert into insertdate values(TO_DATE('08-DEC-2007','DD-MON-YYYY'));
提示:ORA-01843:无效的月份
换成如下语句
insert into insertdate values(TO_DATE('08-8月-2007','DD-MON-YYYY'));
可是执行成功。
分析:'8'占一个字符,'月'占两个字符,所以正好与指定的'MON'三个字符相符。
但是为什么用'DEC'三个字符就不行呢?
create table insertdate(
todaydate date
);成功
插入数据
insert into insertdate values(TO_DATE('08-DEC-2007','DD-MON-YYYY'));
提示:ORA-01843:无效的月份
换成如下语句
insert into insertdate values(TO_DATE('08-8月-2007','DD-MON-YYYY'));
可是执行成功。
分析:'8'占一个字符,'月'占两个字符,所以正好与指定的'MON'三个字符相符。
但是为什么用'DEC'三个字符就不行呢?
相反下面这句话在9i中执行不了
insert into insertdate values(TO_DATE('08-8月-2007','DD-MON-YYYY'));
-- 修改会话的默认日期格式
ALTER SESSION SET nls_date_format = 'YYYY-MM-DD';
-- 临时改变一下会话的默认语言, 以识别类似 '12-MAY-05' 的日期格式
alter session set nls_date_language = 'AMERICAN';
-- 改回简体中文语言:
alter session set nls_date_language = 'SIMPLIFIED CHINESE';