共用方式為


Excel2 自訂連接管理員範例

新增: 2006 年 4 月 14 日

「Excel2 自訂連接管理員」範例示範如何建立自訂連接管理員 (Excel2 連接管理員) 及其相關聯的使用者介面。以 Itanium 為基礎的作業系統不支援這個範例。

如需有關如何建立自訂連接管理員的詳細資訊,請參閱<Creating a Custom Connection Manager>。如需有關 Integration Services 中使用連接管理員的一般資訊,請參閱<Integration Services 連接>和<連接管理員>。

自訂連接管理員會使用 OleDb .NET Framework Data Provider 和 Microsoft OLE DB Provider for Jet 連接到可用的 Microsoft Excel 活頁簿,並從它的 AcquireConnection 方法傳回開啟的 OleDbConnection 物件。當您在封裝中建立 Excel2 連接管理員的新執行個體時,它的自訂使用者介面會提示您輸入 Excel 活頁簿的路徑。此連接管理員還會提供可用來指定「匯入模式」的核取方塊。如此即可解決當 Excel 資料行包含混合的文字和數值資料時,經常發生的問題。

ms365193.note(zh-tw,SQL.90).gif附註:
「Excel2 自訂連接管理員」範例不可以與 Excel 來源和目的地併用。您可以使用 DataReader 來源和目的地進行測試。

此程式碼範例實作下列功能:

ms365193.note(zh-tw,SQL.90).gif重要事項:
範例只供教育目的之用。它們不能用於實際執行環境,而且從來沒有在實際執行環境中測試過。Microsoft 不提供對這些範例的技術支援。

執行範例

如果您已經知道如何找出、建置和安裝程式碼範例,可以直接跳至<測試範例>一節,閱讀有關如何設定與執行此範例的內容。

必要條件

此範例需要安裝下列元件。

  • Microsoft Visual Studio 2005
  • Microsoft SQL Server 2005 Integration Services

位置

如果程式碼範例安裝於預設位置,則範例位於下列目錄中:

C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\\Programming Samples\Control Flow\Excel2ConnectionManager Sample

程式碼範例的 C# 方案位於 Excel2ConnMgrCS 目錄中,而 Visual Basic 方案位於 Excel2ConnMgrVB 目錄中。

如需有關安裝範例所需執行之兩個步驟程序的詳細資訊,請參閱<安裝範例>。若要取得最新版的範例,包括自 SQL Server 2005 原始發行版本以來所發佈的新範例,請參閱<SQL Server 2005 範例與範例資料庫 (2006 年 4 月)>(英文)。

建立範例

如果您尚未在 Samples 資料夾產生強式名稱金鑰檔,請使用下列程序來產生此金鑰檔。範例專案在 [專案屬性] 對話方塊的 [簽章] 索引標籤上設定為在建立時期以此金鑰檔簽署組件。

若要產生強式名稱金鑰檔

  1. 若要開啟 Microsoft Visual Studio 2005 命令提示字元,請按一下 [開始],依序指向 [所有程式]、[Microsoft Visual Studio 2005]、[Visual Studio 工具],然後按一下 [Visual Studio 2005 命令提示字元]。

    - 或 -

    若要開啟 Microsoft .NET Framework 命令提示字元,請按一下 [開始],依序指向 [所有程式] 和 [Microsoft .NET Framework SDK v2.0],然後按一下 [SDK 命令提示字元]。

  2. 在命令提示字元中,使用變更目錄 (CD) 命令,將 [命令提示字元] 視窗的目前資料夾變更為 Samples 資料夾。您在此資料夾建立的金鑰檔將供所有 SQL Server 2005 程式碼範例使用。

    ms365193.note(zh-tw,SQL.90).gif附註:
    若要判斷範例所在的資料夾,按一下 [開始],依序指向 [所有程式]、[Microsoft SQL Server 2005] 和 [文件集和教學課程],然後按一下 [範例目錄]。如果是使用預設安裝位置,則範例位於 <system_drive>:\Program Files\Microsoft SQL Server\90\Samples。
  3. 在命令提示字元中,執行下列其中一個命令來產生金鑰檔:

    sn -k SampleKey.snk
    
    ms365193.note(zh-tw,SQL.90).gif重要事項:
    如需有關強式名稱金鑰組的詳細資訊,請參閱 MSDN 中 .NET Development Center 中的<Security Briefs: Strong Names and Security in the .NET Framework>。
  4. 在後續步驟中,您需要金鑰檔的公開金鑰 Token。若要取得公開金鑰 Token,請在命令提示字元中執行下列命令,先從金鑰檔擷取公開金鑰至新的檔案:

    sn -p SampleKey.snk SampleKeyPublic.snk
    

    現在,在命令提示字元中執行下列命令來顯示新檔案中的公開金鑰 Token:

    sn -t SampleKeyPublic.snk
    

    將公開金鑰 Token 複製到剪貼簿,或儲存起來供以後使用。

若要在 Microsoft Visual Studio 2005 中建立範例

  1. [檔案] | [開啟舊檔] 功能表,按一下 [專案] 並開啟 Excel2ConnMgrVB.slnExcel2ConnMgrCS.sln

  2. 在 [方案總管] 中,選取 Excel2ConnMgrVB 或 Excel2ConnMgrCS 專案。

  3. 在 Excel2ConnMgrCS.cs 檔或 Excel2ConnMgrVB.vb 檔的類別宣告之前找到 DtsConnection 屬性,然後將該屬性的 UITypeName 屬性中的公開金鑰語彙基元的英數字元值,取代成先前從金鑰檔取得的公開金鑰語彙基元。

  4. [建立] 功能表上,按一下 [建置方案] 來建立方案。

安裝範例

此範例提供有 Visual Basic 和 C# 兩個版本。為了區別各版範例的組件,輸出組件的名稱會附加 CS 或 VB。成功建立元件之後,請遵循這些步驟,將它加入 Business Intelligence Development Studio 中,作為封裝中的連接管理員。

若要將元件複製到 Connections 資料夾

  1. 開啟 [Windows 檔案總管] 或您偏好的應用程式來使用檔案系統。

  2. 將組件 (Excel2ConnMgrCS.dll 和 Excel2ConnMgrUICS.dll,或 Excel2ConnMgrVB.dll 和 Excel2ConnMgrUIVB.dl) 複製到位於 %system%\Program Files\Microsoft SQL Server\90\DTS\Connections[Connections] 資料夾。

若要透過拖放組件將元件安裝於全域組件快取 (GAC)

  1. 開啟 [Windows 檔案總管] 或您偏好的應用程式來使用檔案系統。

  2. 將組件從 Connections 資料夾拖曳到全域組件快取 (GAC) 所在的資料夾,即 %system%\assembly

若要使用 gacutil.exe 將元件安裝於全域組件快取 (GAC)

  1. 開啟 [命令提示字元] 視窗。

  2. 輸入下列命令以將 C# 版元件和使用者介面安裝於 GAC:

    gacutil.exe -iF "C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\CS\Excel2ConnMgrCS\bin\Debug\Excel2ConnMgrCS.dll"
    gacutil.exe -iF "C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\CS\Excel2ConnMgrUICS\bin\Debug\Excel2ConnMgrUICS.dll"
    

    - 或 -

    輸入下列命令,將 Visual Basic 版元件和使用者介面安裝至 GAC:

    gacutil.exe -iF " C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\VB\Excel2ConnMgrVB\bin\Debug\Excel2ConnMgrVB.dll"
    gacutil.exe -iF " C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\VB\Excel2ConnMgrVB\bin\Debug\Excel2ConnMgrUIVB.dll"
    

測試範例

您現在可以在封裝中測試自訂連接管理員。

若要在封裝中使用範例連接管理員

  1. 在 [SSIS 設計師] 的連接管理員區域中,以滑鼠右鍵按一下並選取 [新增連接],然後在可用的連接類型清單中選取 [EXCEL2]。按一下 [確定]

  2. 編輯新的連接管理員。在 [Excel2 連接管理員編輯器] 中,尋找可用的 Excel 活頁簿檔案。使用核取方塊指定標頭的設定及「匯入模式」設定。

    ms365193.note(zh-tw,SQL.90).gif附註:
    「Excel2 自訂連接管理員」範例無法搭配 Excel 來源使用,它僅支援內建的 Excel 連接管理員。您可以改用 DataReader 來源進行測試。