狀況
請考慮下列情況:
-
在 [Microsoft 主機整合伺服器 2013,您可以設定 DB2 資料表。
-
此資料表包含時間的值是 24:00:00 的時間戳記資料行。
-
您嘗試使用 db2 的 OLEDB 提供者選取時間戳記資料行。
在這個案例中,要求會失敗,並且傳回下列的例外狀況︰
System.ArgumentOutOfRangeException 未處理︰ HResult = 2146233086
訊息 = 小時、 分和秒參數描述未表示的日期時間。原因
之所以發生這個問題,是因為 Microsoft SQL Server 中的 24:00:00 的時間值無效。
解決方案
Hotfix 資訊
支援的 hotfix 可從 Microsoft 取得。不過,此 Hotfix 僅用於修正本文中所述的問題。此 hotfix 只適用於發生本文所述之問題的系統。此 hotfix 可能會接受其他測試。因此,如果此問題的影響不會很嚴重,我們建議您等候含此 hotfix 的下一版軟體更新。http://support.microsoft.com/default.aspx?scid=fh;[LN];CNTACTMS (英文) 注意「 下載 Hotfix 」 表單會顯示 hotfix 可用的語言。如果看不到您的語言,是因為未提供該語言的 Hotfix 。
如果 hotfix 可供下載,在此知識庫文件頂端將出現「可用的 Hotfix」區段。如果這個區段沒有出現,請連絡 Microsoft 客戶服務及支援以取得 hotfix。 請注意,是否發生其他問題,或者如果需要進行疑難排解,您可能必須建立個別的服務要求。收取支援費用會套用到其他支援問題和此特定 hotfix 無法解決的問題。如需 Microsoft 客戶服務和支援的電話號碼或建立個別的服務要求的完整清單,請造訪下列 Microsoft 網站:先決條件
您必須套用此 hotfix 之後所安裝的 Microsoft 主機整合伺服器 2013年累積的更新 2。如需有關如何取得累積更新套件,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文的詳細資訊︰
累積更新資訊
這個問題的修正程式是累積更新套件 3 中包含主機整合伺服器 2013年。如需有關如何取得累積更新套件,請參閱更新套件的主機整合伺服器 2013年 3 的累計。
因應措施
若要解決這個問題,您可以將時間戳記資料行的值解譯為文字。若要這麼做,您必須設定為True的日期時間為 Char連接字串參數。例如,設定這個字串,如下所示︰
日期時間為 Char = True
更多的資訊
如果時間戳記資料行中的小時值是24:00,從 DB2 格式調整為 MSSQL 格式就會建立一天增加。例如,值為"2015年-08-26-24.00.00.000000"DB2 一邊調整,以"2015年-08-27-00.00.00.000000"MSSQL 一邊。
狀態
Microsoft 已確認這是<套用>一節所列出的 Microsoft 產品的問題。