即使在关闭我的oracle sql developer之后,是否可以永久地改变会话?永久地改变会话
,我想改变的声明的一个例子:
Alter Session Set Nls_Timestamp_Tz_Format='HH24:MI TZR';
上面的语句只允许我以改变当前会话,而不是永久使它。
感谢
即使在关闭我的oracle sql developer之后,是否可以永久地改变会话?永久地改变会话
,我想改变的声明的一个例子:
Alter Session Set Nls_Timestamp_Tz_Format='HH24:MI TZR';
上面的语句只允许我以改变当前会话,而不是永久使它。
感谢
如果您只想更改SQL Developer的默认值,则可以在SQL Developer设置中执行此操作。在SQL Developer 3.1中(虽然导航可能略有不同,但早期版本中存在相同的设置),Tools |首选项|数据库| NLS允许您指定时间戳格式和时间戳TZ格式。然后,SQL Developer将在创建新会话时自动为您发出适当的ALTER SESSION
命令。
嗨,谢谢你的回答。它非常清楚。我知道sql开发人员可以更改我们自己的设置。但是,如果我授予其他用户的表,他们将不会有相同的配置。有没有配置它的示例方法? – JLearner
@ user976050 - 否。其他用户将使用其他客户端。其他客户端将从其他地方进行NLS设置。其他用户可能有不同的NLS偏好。如果要向其他用户呈现字段的特定字符串表示形式,请创建一个视图,该视图使用指定的格式掩码执行显式的“TO_CHAR”,并授予用户访问视图的权限。 –
好吧,这就是我所做的显示不同表中的所有不同的时区。我只是在想,如果有什么更简单的方法可以让它永久保存。感谢您的澄清! – JLearner
您需要设置在initialization parameter file以影响整个数据库。
数据库中的NLS设置被客户端上的设置所否决,因此不起作用。实际使用数据库的默认NLS设置的情况很少。 –
初始化参数如Nls_Timestamp_Tz_Format
可以从三个来源设置:
ALTER SESSION SET
语句init.ora
spfile
要在数据库中永久设置数据库中的默认值: -
alter system ... scope=spfile;
然后作为SYS(因此您可能需要与DBA交谈),并且显然在适当的时间! -
shutdown;
startup;
(我知道spfile中已经提到,但都可以从sqlplus中CMDLINE做,至少在11g中。)
题外话了这么;属于serverfault.com。 –