徵狀
假設您使用 Microsoft SQL Server 2012 Integration Services (SSIS 2012)或 SQL Server 2014 Integration Services (SSIS 2014)。 當您將 OperationType 屬性設定為要 驗證的 ssis XML 任務時,SSIS xml 驗證器只會輸出 true 或 false的值。 此行為是由 SQL Server Integration Services 中的設計所導致。當驗證輸出的值為 false時,可能很難判斷錯誤在驗證的 XML 檔中存在的位置。
解決方案
此問題最初是在 SQL Server 的後續累積更新中修正。
SQL Server 2012 SP2 累積更新1 /en-us/help/2976982
SQL Server 2014 的累積更新2 /en-us/help/2967546
SQL Server 2012 SP1 累計更新10 /en-us/help/2954099
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
套用此熱修復程式後,此熱修復程式中引進了新的任務屬性 ValidationDetails 。 其資料類型是 bool ,預設值是 false。 當您使用預設值時,驗證輸出仍是相同的 true 或 false字串。 若要取得 XML 格式的詳細驗證輸出,您必須將屬性值變更為 true。 輸出 XML 類似以下所示:<?xml version="1.0" encoding="utf-8"?><root xmlns:ns="http://schemas.microsoft.com/xmltools/2002/xmlvalidation"> <metadata> <result>false</result> <errors>1</errors> <warnings>0</warnings> <startTime><DateTime></startTime> <endTime><DateTime></endTime> </metadata> <messages> <error line="1" position="6250">The key sequence 'HUNGC' in 'CustomerIDKey' Keyref fails to refer to some key.</error> </messages></root> 注意: 若要充分利用新加入的 ValidationDetails 選項和增強的輸出,您可以在執行套件的 SSIS 伺服器以及開發套件的 SSDT 開發人員電腦上安裝累積更新。
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。