Microsoft 將 Microsoft SQL Server 2005 與 Microsoft SQL Server 2008 修正案作為一個可下載檔案發行。 由於修補是累積性的,每個新版本都包含先前 SQL Server 2005 或 SQL Server 2008 修補釋版本中包含的所有熱修補與安全修補。Microsoft 將 Microsoft SQL Server 2005、Microsoft SQL Server 2008 及 Microsoft SQL Server 2008 R2 修正作為一個可下載檔案發行。 由於修補是累積性的,每個新版本都包含先前 SQL Server 2005、SQL Server 2008 或 SQL Server 2008 R2 修正釋出時所包含的所有熱修補與安全修補。
症狀
請考慮以下案例:
- 你可以在 SQL Server 2005 (SSIS 2005) Integration Services、Microsoft SQL Server 2008 Integration Services (SSIS 2008) 套件,或 SQL Server 2008 R2 (SSIS 2008) Integration Services 的資料流中新增 XML 來源任務。
- 你可以設定 XML Source 任務使用 XML 檔案和 XML 結構檔案 (XSD) 。 XML 檔案包含一些基於結構定義的無效資料。
- 你嘗試將 XML Source 任務的錯誤輸出導向到處理無效資料。
- 你負責整個包裹。
在此情況下,封裝在錯誤輸出被重新導向前失敗,並發生例外。
例如, LeaseRentStartDate 欄位以 xs:date 型別定義,使用 XSD 檔案,包含以下內容:
<xs:element minOccurs="0" name="LeaseRentStartDate" type="xs:date" />
然而,XML 檔案包含以下格式錯誤的資料:
<LeaseRentStartDate><Time></LeaseRentStartDate>
在這種情況下,套件執行失敗後錯誤輸出尚未被導向,並會收到類似以下錯誤訊息的訊息:
注意
[XML 來源 [3198]]錯誤:元件「XML Source」 (3198) 嘗試將資料寫入輸出欄位「LeaseRentStartDate」 (4036) ,輸出為「LEASE Error Output」 (3668) 失敗。 字串 「<Time>」並非有效的 AllXsd 值。
原因
此問題發生於 XML Source 任務錯誤地根據資料型態進行第二次欄位值解析。 因此,例外情況會發生。
解決方式
累積更新資訊
SQL Server 2008 R2
這個問題的修正最早是在累積更新 5 中釋出的。 欲了解更多如何取得 SQL Server 2008 R2 累積更新套件的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
2438347 2008 R2 SQL Server 累積更新包 註:由於建置是累積性的,每個新修正版本都包含了前一 SQL Server 2008 R2 版本中所有的熱修補與安全修補。 我們建議您考慮套用包含此熱修正的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
981356 在 SQL Server 2008 R2 發行之後所發行的 SQL Server 2008 R2 組建 (機器翻譯)
SQL Server 2005 Service Pack 4
此問題的修正最初於 SQL Server 2005 Service Pack 4 的累積更新 1 中釋出。 欲了解更多關於此累積更新套件的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
2464079 2005 服務包 4 SQL Server累積更新包 1 備註:由於建置是累積式的,每個新修正版本都包含了前一 2005 年修正釋版本SQL Server所有的熱修補與安全修補。 Microsoft 建議你考慮套用包含此熱修補的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2485757 2005 服務包 4 發布後釋出的 SQL Server 2005 版本SQL Server SQL Server 2005 熱修補Microsoft針對特定SQL Server服務包所建立。 您必須對安裝 SQL Server 2005 服務包 4 套用 SQL Server 2005 Service Pack 4 熱修補程式。 預設情況下,SQL Server 服務包中提供的任何熱修正會包含在下一個 SQL Server 服務包中。
SQL Server 2008 Service Pack 2
此問題的修正最初於 SQL Server 2008 Service Pack 2 的累積更新 1 中釋出。 欲了解更多關於此累積更新套件的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
2289254 2008 SQL Server 服務包 2 累積更新 注意 由於建置是累積式,每個新修正版本都包含了 2008 SQL Server 修正釋版本中包含的所有熱修補與安全修補。 我們建議您考慮套用包含此熱修正的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2402659 2008 服務包 2 發布後SQL Server SQL Server 2008 版本
SQL Server 2008 服務包 1
此問題的修正最初於 SQL Server 2008 Service Pack 1 的累積更新 10 中釋出。 欲了解更多關於此累積更新套件的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
2279604 2008 SQL Server 服務包 1 的累積更新包 10 備註:由於建置是累積式的,每個新修正釋版本都包含了前一SQL Server 2008 修正釋版本中包含的所有熱修補與安全修補。 Microsoft 建議你考慮套用包含此熱修補的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
970365 2008 SQL Server 2008 版本是在 2008 服務包 1 發布後釋出SQL Server Microsoft SQL Server 2008 熱修補是針對特定SQL Server服務包所建立的。 您必須對安裝 SQL Server 2008 Service Pack 1 SQL Server 熱修補程式。 預設情況下,SQL Server 服務包中提供的任何熱修正會包含在下一個 SQL Server 服務包中。
SQL Server 2005 Service Pack 3
此問題的修正最早於 SQL Server 2005 Service Pack 3 的累積更新 12 中釋出。 欲了解更多關於此累積更新套件的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
2345449 2005 服務包 3 SQL Server累積更新套件 12 由於建置是累積的,每個新修正版本都包含了先前 2005 SQL Server 修正版本中包含的所有熱修正與安全修正。 Microsoft 建議你考慮套用包含此熱修補的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
960598 2005 服務包 3 發布後SQL Server 2005 SQL Server版本Microsoft SQL Server 2005 熱修補針對特定SQL Server服務包製作。 您必須對安裝 SQL Server 2005 Service Pack 3 的安裝套用 SQL Server 2005 Service Pack 3 熱修補程式。 預設情況下,SQL Server 服務包中提供的任何熱修正會包含在下一個 SQL Server 服務包中。
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。
參考資料
欲了解更多關於 XML 來源的資訊,請造訪以下 Microsoft 開發者網絡 (MSDN) 網站:
關於 XML 原始碼的一般資訊 欲了解更多如何在資料流中處理錯誤的資訊,請造訪以下 MSDN 網站:
關於如何在資料流程中處理錯誤的一般資訊 欲了解更多關於 XML 架構資料型態的資訊,請造訪以下網站:
關於 XML 結構資料型態的一般資訊欲了解更多關於 SQL Server 增量服務模型的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
935897 來自 SQL Server 團隊之可傳遞解決回報問題的 Hotfix 的累加服務模型 (機器翻譯)
欲了解更多關於 SQL Server 更新命名架構的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
822499 Microsoft SQL Server軟體更新套件的新命名架構欲了解更多軟體更新術語,請點擊以下文章編號以瀏覽Microsoft知識庫中的文章:
824684 描述用於描述Microsoft軟體更新的標準術語