1、查詢下列DATA DICTIONARY 中NLS_DATE_FORMAT的日期格式
NLS_DATABASE_PARAMETERS 格式 DD-MON-YY
NLS_INSTANCE_PARAMETERS 格式 DD-MON-YY
NLS_SESSION_PARAMETERS 格式 DD-MON-YY
sqlplus查看sysdate格式 DD-MON-YY
2、使用alter session set nls_date_format='YYYY-MM-DD'則
NLS_DATABASE_PARAMETERS 格式 DD-MON-YY
NLS_INSTANCE_PARAMETERS 格式 DD-MON-YY
NLS_SESSION_PARAMETERS 格式 YYYY-MM-DD
sqlplus查看sysdate格式 YYYY-MM-DD
重新啟動DB,則
NLS_DATABASE_PARAMETERS 格式 DD-MON-YY
NLS_INSTANCE_PARAMETERS 格式 DD-MON-YY
NLS_SESSION_PARAMETERS 格式 DD-MON-YY
sqlplus查看sysdate格式 DD-MON-YY
3、在init<sid>.ora中加入NLS_DATE_FORMAT=YYYY-MM-DD,重新啟動DB後
NLS_DATABASE_PARAMETERS 格式 DD-MON-YY
NLS_INSTANCE_PARAMETERS 格式 YYYY-MM-DD
NLS_SESSION_PARAMETERS 格式 DD-MON-YY
sqlplus查看sysdate格式 DD-MON-YY
4、在win98 regedit中增加
\Hkey_local_machine\software\oracle\NLS_DATE_FORMAT='YYYY/MM/DD HH24:MI:SS'
NLS_DATABASE_PARAMETERS 格式 DD-MON-YY
NLS_INSTANCE_PARAMETERS 格式 YYYY-MM-DD
NLS_SESSION_PARAMETERS 格式 YYYY/MM/DD HH24:MI:SS
sqlplus查看sysdate格式 YYYY/MM/DD HH24:MI:SS
結論:程序設計中取系統時間最好使用to_char(),否則程序難以適應外界因素對sysdate格式的影響