如何更改oracle默认时间戳格式

时间:2011-08-22 13:09:01

标签: oracle format timestamp default

使用alter session仅为当前会话设置 NLS_TIMESTAMP_FORMAT NLS_TIMESTAMP_TZ_FORMAT

它不会更改默认数据库属性。

我机器上安装的oracle 10g的语言环境设置为中文。时间戳格式是中文特定的。

我需要使用美国格式(YYYY-MM-DD HH:MI:SS)。

任何解决方案?

2 个答案:

答案 0 :(得分:3)

来自Oracle文档:

您可以通过在初始化参数文件中设置NLS_TIMESTAMP_FORMAT来指定它的值。您可以将客户端的值指定为客户端环境变量。

您还可以通过更改初始化参数中的值然后重新启动实例来更改NLS_TIMESTAMP_FORMAT的值。要在会话期间更改值,请使用ALTER SESSION SET语句。

NLS_TIMESTAMP_FORMAT http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams132.htm

和NLS_TIMESTAMP_TZ_FORMAT: http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams133.htm

您需要更改实例的参数并退回数据库。

答案 1 :(得分:0)

Doh,打开了2个标签,并把它放在错误的线程中......

要从数据库中永久地在db中设置默认值: -

alter system ... scope=spfile;

然后作为SYS(所以您可能需要与DBA交谈),显然在适当的时候! -

shutdown;
startup;

(我知道spfile已被提及,但它可以从sqlplus cmdline完成,至少在11g中完成。)

相关问题