0
在我的應用這個錯誤發生時,我嘗試運行以下命令:結果集GETDATE()返回不正確的日期值
SELECT send_day FROM types WHERE ID_TYPE = 4
查詢執行返回的日期2日列值之前。
在Java應用程序這個值的恢復是這樣的:
java.sql.Date dataSQL = retorno.getDate(1);
我使用SQLJDB4.0驅動程序和數據庫版本是2008年
對於發表評論的一些答案:
的數據庫的值爲2013-08-22並且返回的是2013-08-20
我的時區是UTC-03:00。在數據庫中,我執行的是以下命令:select SYSDATETIMEOFFSET()
其返回:2013年8月22日11:49:12.4010367-03:00
也許像Excel一樣,Java使用1899-12-30作爲「第0天」而不是1900-01-01? –
請包括數據庫中的值,以及從ResultSet中獲取的值以及本地時區以及數據庫中存儲的數據的(實際或預期)時區。 –
Java使用1970-01-01作爲「第0天」。可能是時區問題(請參閱getDate(int columnIndex)與getDate(int columnIndex,Calendar cal)) – agad