ADO NET 來源
ADO NET 來源會從 .NET 提供者取用資料,並使該資料可供資料流程使用。
您可藉由提供定義結果集的 SQL 陳述式,以設定 ADO NET 來源。例如,連接到 AdventureWorks 資料庫並使用 SQL 陳述式 SELECT * FROM Production.Product 的 ADO NET 來源會從 Production.Product 資料表擷取所有資料列,並提供資料集給下游元件。
ADO NET 來源會使用 ADO.NET 連接管理員連接到資料來源,且由連接管理員指定 .NET 提供者。如需詳細資訊,請參閱<ADO.NET 連接管理員>。
ADO NET 來源有一個一般輸出和一個錯誤輸出。
資料類型支援
此來源會將未對應到特定 Integration Services 資料類型的任何資料類型轉換成 DT_NTEXT Integration Services 資料類型。即使資料類型為 System.Object,還是會發生轉換。
您可以將 DT_NTEXT 資料類型變更為 DT_WSTR 資料類型,或是將 DT_WSTR 資料類型變更為 DT_NTEXT 資料類型。您可以在 ADO NET 來源的 [進階編輯器] 對話方塊中設定 [DataType] 屬性,以變更資料類型。如需詳細資訊,請參閱<通用屬性>。
您可以在 ADO NET 來源之後使用資料轉換,將 DT_NTEXT 資料類型轉換成 DT_BYTES 或 DT_STR 資料類型。如需詳細資訊,請參閱<資料轉換>。
在 Integration Services 中,資料類型 DT_DBDATE、DT_DBTIME2、DT_DBTIMESTAMP2 和 DT_DBTIMESTAMPOFFSET 會對應到 SQL Server 中的某些日期資料類型。您可以設定 ADO NET 來源,從 SQL Server 使用的日期資料類型轉換成 Integration Services 使用的資料類型。若要設定 ADO NET 來源轉換這些日期資料類型,請將 ADO.NET 連接管理員的 [Type System Version] 屬性設定為 [SQL Server 2008] 或 [Latest]([Type System Version] 屬性位於 [連接管理員] 對話方塊的 [全部] 頁面上。若要開啟 [連接管理員] 對話方塊,請以滑鼠右鍵按一下 ADO.NET 連接管理員,然後按一下 [編輯])。
[!附註]
如果 ADO.NET 連接管理員的 [Type System Version] 屬性設定為 [SQL Server 2005],系統會將 SQL Server 資料類型轉換成 DT_WSTR。
當 ADO.NET 連接管理員將提供者指定為 .NET Data Provider for SQL Server (SqlClient) 時,系統會將使用者定義資料類型 (UDT) 轉換成 Integration Services 二進位大型物件 (BLOB)。當系統轉換 UDT 資料類型時,會套用以下規則:
如果資料不是大型 UDT,系統會將資料轉換成 DT_BYTES。
如果資料不是大型 UDT,而且資料庫上資料行的 [Length] 屬性設定為 -1 或是大於 8,000 個位元組的值,則系統會將資料轉換成 DT_IMAGE。如需有關資料行屬性的詳細資訊,請參閱<修改資料行屬性>。
如果資料是大型 UDT,系統會將資料轉換成 DT_IMAGE。
[!附註]
如果 ADO NET 來源未設定為使用錯誤輸出,系統會將資料流向 DT_IMAGE 資料行 (以 8,000 個位元組的區塊為單位)。如果 ADO NET 來源設定為使用錯誤輸出,系統會將整個位元組陣列傳遞給 DT_IMAGE 資料行。如需有關如何設定元件使用錯誤輸出的詳細資訊,請參閱<處理資料中的錯誤>。
如需有關 Integration Services 資料類型、支援的資料類型轉換及橫跨某些資料庫 (包括 SQL Server) 之資料類型對應的詳細資訊,請參閱<Integration Services 資料類型>。
如需有關將 Integration Services 資料類型對應至 Managed 資料類型的詳細資訊,請參閱<使用資料流程中的資料類型>。
ADO NET 來源的疑難排解
您可以記錄 ADO NET 來源對外部資料提供者所執行的呼叫。您可以使用這項記錄功能,疑難排解 ADO NET 來源執行的從外部資料來源載入資料的作業。若要記錄 ADO NET 來源對外部資料提供者執行的呼叫,請啟用封裝記錄,然後在封裝層級上選取 [診斷] 事件。如需詳細資訊,請參閱<疑難排解封裝執行>。
設定 ADO NET 來源
您可以透過「SSIS 設計師」或以程式設計的方式來設定屬性。
如需有關可以在 [進階編輯器] 對話方塊中或以程式設計方式設定之屬性的詳細資訊,請按一下下列其中一個主題:
如需有關如何設定屬性的詳細資訊,請參閱<如何:設定資料流程元件的屬性>。
|