您目前已離線,請等候您的網際網路重新連線

修正: 數字] 類型的值會被截斷時從 Oracle 連結伺服器選取資料使用 OLE DB 提供者

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:3051993
徵狀
當您執行查詢,以選取從 Oracle 連結伺服器的資料,藉由使用 OLE DB 提供者,Microsoft SQL Server 2012年或 SQL Server 2014年中的時,可能會在查詢結果中截斷數字的 [類型] 欄中的值。


發生的原因
之所以發生這個問題,是因為 Oracle 數的型別與非-宣告整數位數/小數位數不能清除的 1:1 對應至 SQL Server 資料型別。SQL Server 2012 SP2 CU2 之前 SQL Server 會將這類值對應到字串,以確定不會遺失精確度會發生。但是,可能會導致不正確的結果如果查詢需要這類值的排序順序。在 SQL Server 2012 SP2 CU2,對應會變更為數值 (38,0) 的哪個部分的資料庫結構描述使用數字精確度/小數點位數不大的整數索引鍵表示允許的。這會導致回復時需要非整數值。
解決方案
套用此修正程式之後,無法辨識的精確度/小數點位數的數字值會被視為與 OLE DB 提供者的雙精度浮點數值。如果是很重要的精確度值的範圍不是夠大,您可以啟用新的追蹤旗標 7311,會開始播放,這類值視為數字 (38,10)。

SQL Server 的下列累積更新已先修正問題。

SQL Server 2014 sp1 的累積更新 1

SQL Server 2014年累積更新 8

SQL Server 2012 sp2 的累積更新 6

關於 SQL Server 的累積更新

SQL Server 每個新的累積更新包含所有的 hotfix,所有安全性修正程式,都包含在先前的累積更新。請檢查出最新的累積更新 SQL Server:
其他可行方案
如果要解決這個問題,請從 [數字的 Oracle 欄位輸入的完整支援 SQL Server 先為資料型別轉換。
狀況說明
Microsoft 已確認這是<套用> 一節所列出的 Microsoft 產品的問題。

協力廠商資訊免責聲明

本文將所述之產品製造協力廠商均與 Microsoft 無關。Microsoft 不對這些產品之其他相關效能或可靠性作出任何擔保或默示。

警告:本文為自動翻譯

內容

文章識別碼:3051993 - 最後檢閱時間:06/22/2015 14:38:00 - 修訂: 2.0

Microsoft SQL Server 2012 Service Pack 2, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3051993 KbMtzh
意見反應
" src="https://c.microsoft.com/ms.js"> >