XML 來源

更新: 2006 年 4 月 14 日

XML 來源會讀取 XML 資料檔,並將資料填入來源輸出中的資料行。

XML 檔案中的資料經常會包括階層式關聯性。例如,XML 資料檔可代表目錄以及目錄中的項目。在資料能夠進入資料程序之前,必須先決定 XML 資料檔中各元素之間的關聯性,並且為檔案中各元素產生輸出。

XML 來源使用結構描述解譯 XML 資料。XML 來源支援使用 XML 結構描述定義 (XSD) 檔或內嵌結構描述,將 XML 資料翻譯成表格格式。如果您使用 [XML 來源編輯器] 對話方塊設定 XML 來源,則使用者介面可從指定的 XML 資料檔產生 XSD。

ms140277.note(zh-tw,SQL.90).gif附註:
不支援 DTD。

結構描述僅可支援單一命名空間,而不支援結構描述集合。

ms140277.note(zh-tw,SQL.90).gif附註:
XML 來源不會根據 XSD 驗證 XML 檔案中的資料。

XML 來源支援三種不同的資料存取模式。您可以指定 XML 資料檔的檔案位置、包含檔案位置的變數,或包含 XML 資料的變數。

XML 來源包括 XMLDataXMLSchemaDefinition 自訂屬性;屬性運算式可以在載入封裝時更新這些屬性。如需詳細資訊,請參閱<Integration Services 運算式參考>、<在封裝中使用屬性運算式>和<Source Custom Properties>。

XML 來源支援多項規則輸出和多項錯誤輸出。

SQL Server 2005 Integration Services (SSIS) 包括用來設定 XML 來源的 [XML 來源編輯器] 對話方塊。「SSIS 設計師」中即提供此對話方塊。

使用 XML 來源編輯器

XML 檔案中的資料經常會包括階層式關聯性。[XML 來源編輯器] 對話方塊會使用指定的結構描述產生 XML 來源輸出。您可以指定 XSD 檔、使用內嵌結構描述,或從指定的 XML 資料檔產生 XSD。結構描述必須於設計階段提供。

XML 來源會藉由為包含 XML 檔案中其他元素的每項元素建立輸出的方式,從 XML 資料產生表格式結構。例如,如果 XML 資料代表目錄以及目錄中的項目,則 XML 來源會為目錄以及目錄所包含的每一種項目建立輸出。每一個項目的輸出將包含該項目屬性的輸出資料行。

為了提供有關輸出中資料的階層式關聯性的資訊,XML 來源會在輸出中加入識別每一個子元素所屬父元素的資料行。若使用含有不同項目類型的目錄範例,則各項目可能會有識別其所屬目錄的資料行值。

XML 來源會為每一個元素建立輸出,但您不需使用所有輸出。您可以刪除任何不要使用的輸出,或不要將它連接到下游元件。

XML 來源還會產生輸出名稱,以確保名稱不會模糊不清。這些名稱可能很長,且可能不會以對您來說實用的方式識別輸出。您可以重新命名輸出,只要其名稱保持唯一即可。您也可以修改資料類型和輸出資料行的長度。

XML 來源會針對每一項輸出加入錯誤輸出。依預設,錯誤輸出中的資料行的資料類型為 Unicode 字串 (DT_WSTR),且其長度為 255,不過您可以藉由修改資料類型和長度的方式設定錯誤輸出中的資料行。

如果 XML 資料檔包含 XSD 中沒有的元素,則會略過這些元素且不會產生其輸出。換言之,如果 XML 資料檔遺漏了 XSD 中出現的元素,則輸出會包含擁有 Null 值的資料行。

從 XML 資料檔擷取資料時,該資料會轉換為 Integration Services 資料類型。XSD 或內嵌結構描述可能會指定元素的資料類型;如果未指定,則 [XML 來源編輯器] 對話方塊會指派 Unicode 字串資料類型 (DT_WSTR) 給包含該元素的輸出中的資料行,並將資料行長度設定為 255 個字元。如果結構描述指定元素的最大長度,輸出資料行的長度會設為此值。如果最大長度大於元素轉換成的 Integration Services 資料類型支援的長度,則資料會截斷成該資料類型的最大長度。例如,如果字串長度為 5000,因為 DT_WSTR 資料類型的最大長度是 4000 個字元,則字串會截斷成 4000 個字元;同樣地,位元組資料會截斷成 DT_BYTES 資料類型的最大長度 8000 個字元。如果結構描述沒有指定最大長度,這兩種資料類型的資料行預設長度都會設為 255。XML 來源的資料截斷處理方式與其他資料流程元件的截斷處理方式相同。如需詳細資訊,請參閱<處理資料中的錯誤>。

您可以修改資料類型和資料行長度。如需詳細資訊,請參閱<Integration Services 資料類型>。

設定 XML 來源

您可以透過「SSIS 設計師」或以程式設計方式設定屬性。

如需有關 [XML 來源編輯器] 對話方塊中可設定屬性的詳細資訊,請按一下下列其中一個主題:

[進階編輯器] 對話方塊會反映能以程式設計的方式設定之屬性。如需有關可以在 [進階編輯器] 對話方塊中或以程式設計方式設定之屬性的詳細資訊,請按下列其中一個主題:

如需有關如何設定屬性的詳細資訊,請按下列其中一個主題:

請參閱

概念

建立封裝資料流程

其他資源

Integration Services 來源

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2006 年 4 月 14 日

新增內容:
  • 新增有關資料截斷及資料行預設長度的資訊。

2005 年 12 月 5 日

新增內容:
  • 新增有關自訂屬性的資訊。