欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

[参数设置] 日期函数-头疼解决办法

更新时间: 2014-01-05 02:11:59 责任编辑: Author_N1

 

[参数设置] 日期函数--头疼
大家看看我这个怎么修改后台的参数

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
----------------------------------------------------
ASSAMESE_AMERICA.AL32UTF8

SQL> select sysdate from dual;

SYSDATE
----------------
12-????????  -13

create table test_date(
    CRETEAT_TIME TIMESTAMP(3)
    );

SQL> insert into test_date  values('26-9月 -13 10.23.00.000 上午');----这样的语句有100多个。
insert into test_date  values('26-9月 -13 10.23.00.000 上午')
                              *
ERROR at line 1:
ORA-01843: not a valid month
--参考方法--
引用:
大家看看我这个怎么修改后台的参数

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
----------------------------------------------------
ASSAMESE_AMERICA.AL32UTF8

SQL> select sysdate from dual;

SYSDATE
----------------
12-????????  -13

create table test_date(
    CRETEAT_TIME TIMESTAMP(3)
    );

SQL> insert into test_date  values('26-9月 -13 10.23.00.000 上午');----这样的语句有100多个。
insert into test_date  values('26-9月 -13 10.23.00.000 上午')
                              *
ERROR at line 1:
ORA-01843: not a valid month


这个和数据库默认的日期格式有关,你可以通过 select * from V$NLS_PARAMETERS;查看NLS_DATE_LANGUAGE的值。(而且这个是SESSION级别的)
比如我当前session的NLS_DATE_LANGUAGE='SIMPLIFIED CHINESE',那么我直接可以用'12-4月-2013'的字符串格式插入到一个DATE类型的column中。
其实你也可以新开一个窗口建立一个新的SESSION,并且修改这个SESSION的NSL_DATE_LANGUAGE值为AMERICAN:ALTER SESSION SET NLS_DATE_LANGUAGE='AMERICAN';现在你可以在这个窗口中直接插入'12-JAN-2013'格式的字符串到DATE的COLUMN 
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:11:59
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6858/
本文WWW.DOC100.NET DOC100.NET版权所有。