oracle修改默认日期格式

来源:互联网 发布:网络语违和是什么意思 编辑:程序博客网 时间:2024/04/28 00:36

oracle修改默认日期格式

 Oracle数据缺省的时间格式数据的显示形式,与所使用的字符集有关。

fe:使用us7ascii字符集(或者是其他的英语字符集)时,缺省的时间格式显示为:28-Jan-2003,使用zhs16gbk字符集(或其他中文字符集)时时间格式缺省显示为:2003-1月-28。

如果需要转换,要知道当前的默认格式,以及需要转换的日期格式,查看当前会话的时间格式,可以使用以下的SQL语句:
SQL> select sysdate from dual;

在sql*plus中修改当前会话的日期格式
SQL> alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';

这种修改是对当前会话,而不是当前的sql*plus窗口。即如果你这样修改之后,又使用connect命令以其他用户连接到数据库或者是连接到其他的数据库,则这个日期格式就失效了,又恢复到缺省的日期格式。

下面修改是永久生效的。

windows

在注册表/hkey_local_machine/software/oracle/oracle——home(具体名字根据版本来)主键中增加一个字串,字串名为nls_date_format,字串的值为你希望定义的时间格式,如: yyyy-mm-dd hh24:mi:ss ,然后重新启动。

linux

oracle用户编辑 .bash_profile下 加入以下内容
export  NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS '
重新登录即可生效

用sysdba登录
然后更新props$这个表里的字段即可
update props$ set value = 'YYYY-MM-DD HH24:MI:SS' where parameter = 'NLS_DATE_FORMAT';




0 0