数据库是oracle9i的,服务器是win2003的。
4 个解决方案
#1
估计是时区设置在搞鬼,执行下面的语句看看:
SELECT SYSDATE,CURRENT_DATE FROM DUAL;
SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL;
SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL;
SELECT SYSDATE,CURRENT_DATE FROM DUAL;
SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL;
SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL;
#2
時区不一样的話,会出现这种情況
#3
执行SELECT SYSDATE,CURRENT_DATE FROM DUAL;
得到 SYSDATE CURRENT_DATE
1 1/15/2006 19:50 1/16/2006 11:50
执行SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL
得到 CURRENT_TIMESTAMP LOCALTIMESTAMP SYSTIMESTAMP
1 16-JAN-06 11.51.41.656000 AM +08:00 16-JAN-06 11.51.41.656000 AM 16-JAN-06 11.51.41.656000 AM +08:00
执行SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL
得到 DBTIMEZONE SESSIONTIMEZONE
1 GMT +08:00
请问怎么解决呢?
得到 SYSDATE CURRENT_DATE
1 1/15/2006 19:50 1/16/2006 11:50
执行SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL
得到 CURRENT_TIMESTAMP LOCALTIMESTAMP SYSTIMESTAMP
1 16-JAN-06 11.51.41.656000 AM +08:00 16-JAN-06 11.51.41.656000 AM 16-JAN-06 11.51.41.656000 AM +08:00
执行SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL
得到 DBTIMEZONE SESSIONTIMEZONE
1 GMT +08:00
请问怎么解决呢?
#4
谢谢各位,我找到解决办法了(但不适用于跨国际性的公司)
我把+8时区改到-8时区就可以了
我把+8时区改到-8时区就可以了
#1
估计是时区设置在搞鬼,执行下面的语句看看:
SELECT SYSDATE,CURRENT_DATE FROM DUAL;
SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL;
SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL;
SELECT SYSDATE,CURRENT_DATE FROM DUAL;
SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL;
SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL;
#2
時区不一样的話,会出现这种情況
#3
执行SELECT SYSDATE,CURRENT_DATE FROM DUAL;
得到 SYSDATE CURRENT_DATE
1 1/15/2006 19:50 1/16/2006 11:50
执行SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL
得到 CURRENT_TIMESTAMP LOCALTIMESTAMP SYSTIMESTAMP
1 16-JAN-06 11.51.41.656000 AM +08:00 16-JAN-06 11.51.41.656000 AM 16-JAN-06 11.51.41.656000 AM +08:00
执行SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL
得到 DBTIMEZONE SESSIONTIMEZONE
1 GMT +08:00
请问怎么解决呢?
得到 SYSDATE CURRENT_DATE
1 1/15/2006 19:50 1/16/2006 11:50
执行SELECT CURRENT_TIMESTAMP,LOCALTIMESTAMP,SYSTIMESTAMP FROM DUAL
得到 CURRENT_TIMESTAMP LOCALTIMESTAMP SYSTIMESTAMP
1 16-JAN-06 11.51.41.656000 AM +08:00 16-JAN-06 11.51.41.656000 AM 16-JAN-06 11.51.41.656000 AM +08:00
执行SELECT DBTIMEZONE,SESSIONTIMEZONE FROM DUAL
得到 DBTIMEZONE SESSIONTIMEZONE
1 GMT +08:00
请问怎么解决呢?
#4
谢谢各位,我找到解决办法了(但不适用于跨国际性的公司)
我把+8时区改到-8时区就可以了
我把+8时区改到-8时区就可以了