Applies ToSQL Server 2008 R2

Microsoft 將 Microsoft SQL Server 2008 R2 發佈為一個可下載的檔案。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2008 R2 修正程式版本中所包含的所有修復程式及所有安全性修正程式。

徵狀

請試想下列案例:

  • 您的電腦正在執行 Microsoft SQL Server 2008 R2。

  • 您執行的用戶端應用程式會使用 SQL Server 2008 R2 原生用戶端 ODBC 驅動程式,將資料表值參數系結為數據的執行中資料行。

  • 用戶端應用程式會呼叫 SQLPutData 函數,將資料表值參數變更為 SQL_Null_DATA 值。

在這種情況下,用戶端應用程式不會呼叫 SQLPutData 函數,而且您會收到下列錯誤訊息:

[28000]-[Microsoft] [SQL Server 原生用戶端 10.0] [SQL Server] 傳入的表格式資料資料流程(TDS)通訊協定資料流程不正確。 資料流程意外結束

原因

之所以發生這個問題,是因為 ODBC 驅動程式不會將 SQL_Null_DATA 值的資料長度傳送到資料表值參數。

解決方案

若要解決此問題,請在已安裝 SQL Server 2008 R2 原生用戶端的電腦上,套用下列修正程式。

累積更新資訊

SQL Server 2008 R2 Service Pack 1

此問題的修正程式是在 SQL Server 2008 R2 Service Pack 1 的累積更新1中第一次發行。如需如何取得此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2544793 SQL Server 2008 R2 Service Pack 1 的累積更新套件1注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2567616 在發行 SQL Server 2008 R2 Service Pack 1 之後發行的 SQL Server 2008 R2 組建

SQL Server 2008 R2

此問題的修正程式是在累積更新8中第一次發行。如需有關如何取得 SQL Server 2008 R2 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2534352 SQL Server 2008 R2 的累積更新套件8 注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

981356 在發行 SQL Server 2008 R2 之後發行的 SQL Server 2008 R2 組建

狀態

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

參考

如需有關 SQLPutData 函數的詳細資訊,請造訪下列 MSDN 網站:

SQLPutData 函數的一般資訊如需如何使用資料執行中資料行的詳細資訊,請造訪下列 MSDN 網站:

如何使用資料執行中資料行如需表格值參數的詳細資訊,請造訪下列 MSDN 網站:

資料表值參數的一般資訊如需有關 SQL Server 的增量服務模型的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

935897 您可以從 SQL Server 團隊取得增量服務模型,以提供已報告問題的修補程式如需 SQL Server 更新命名架構的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

822499Microsoft SQL Server 軟體更新套件的新命名架構如需軟體更新術語的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

824684 描述 Microsoft 軟體更新所使用的標準術語說明

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。