本文適用於下列產品:
-
Microsoft BizTalk 配接器套件 2.0
-
Microsoft BizTalk 配接器套件 2010
-
SQL Server 的獨立 WCF 架構的 BizTalk 配接器
徵狀
請試想下列案例:
-
您建立用以呼叫在 Microsoft SQL Server 資料表的資料行中插入資料列的預存程序的 Windows 通訊基礎 WCF 為基礎的 SQL 配接器的傳送埠。 資料表的資料行無法儲存 NULL 值。注意: WCF 為基礎的 SQL 配接器會包含在 Microsoft BizTalk 配接器的封包 2010年。
-
到達傳送埠的輸入的訊息的空的元素。例如,該郵件帶有< ns0:input >< / ns0:input >或< ns0:input / >空項目。
在這個案例中,應用程式記錄檔會記錄類似下列的錯誤訊息:
訊息傳送給介面卡"WCF SQL"的傳送埠"< 傳送埠 > 」,具有 URI"mssql: / / < URI >"暫止。 錯誤的詳細資料: System.Data.SqlClient.SqlException (0x80131904): 無法插入資料行 '< 資料行名稱 >' 中的 NULL 值,資料表 '< 資料表名稱 >';資料行不允許 null。 插入動作會失敗。陳述式已結束。
如果資料表的資料行可以儲存 NULL 值,不正確的資料表的資料行中插入 NULL 值。注意事項
-
如果傳送埠呼叫資料表作業而不是將資料列插入資料表的資料行的預存程序,則不會發生這個問題。
-
空的元素的正確值為空字串。
解決方案
累積更新資訊
BizTalk 配接器套件 2009
累積更新套件 4 中會包含可解決這個問題的 hotfix,BizTalk 配接器套件 2.0。 如需有關如何取得累積更新套件的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文: BizTalk 配接器套件 2.0 的2604327累積更新套件 4
BizTalk 配接器套件 2010
解決這個問題的 hotfix 會併入 BizTalk 配接器的封包 2010年累積更新套件 2。 如需有關如何取得累積更新套件,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文的詳細資訊:
2572999 BizTalk 配接器的封包 2010年的累積更新套件 2
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。
參考
BizTalk Server 的 service pack 以及累積的更新清單的相關資訊,如按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
2555976 Service pack 以及 BizTalk Server 的累積更新清單 如需有關 BizTalk Server hotfix 的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
2003907 BizTalk Server hotfix 的詳細資訊