工作 2:加入和設定一般檔案連接管理員

在這項工作中,您將一般檔案連接管理員加入您剛才建立的封裝中。一般檔案連接管理員可讓封裝從一般檔案擷取資料。使用一般檔案連接管理員,您可以指定當封裝從一般檔案擷取資料時,要套用的檔案名稱和位置、地區設定和字碼頁及檔案格式 (包括資料行分隔符號)。此外,您可以手動指定個別資料行的資料類型,或使用 [建議資料行類型] 對話方塊,將所擷取資料的資料行自動對應至 Integration Services 資料類型。

您必須為您要使用的每一個檔案格式建立新的一般檔案連接管理員。因為這個教學課程是從多個具有相同資料格式的一般檔案擷取資料,所以您只需要在封裝中加入和設定一個一般檔案連接管理員。

在此教學課程中,您將在一般檔案連接管理員中設定下列屬性:

  • 資料行名稱:因為一般檔案沒有資料行名稱,所以一般檔案連接管理員會建立預設資料行名稱。這些預設名稱無助於識別每一個資料行所代表的內容。若要使這些預設名稱有所幫助,您必須將預設名稱變更為符合一般檔案資料即將載入的事實資料表的名稱。

  • 資料對應:所有參考連接管理員的一般檔案資料來源元件,將使用您為一般檔案連接管理員指定的資料類型對應。您可以使用一般檔案連接管理員來手動對應資料類型,或使用 [建議資料行類型] 對話方塊。在此教學課程中,您將檢視在 [建議資料行類型] 對話方塊中建議的對應,然後在 [一般檔案連接管理員編輯器] 對話方塊中手動做一些必要的對應。

一般檔案連接管理員提供有關資料檔的地區設定資訊。如果電腦未設定為使用 [英文 (美國)] 地區選項,則您必須在 [一般檔案連接管理員編輯器] 對話方塊中設定其他屬性。

若要加入一般檔案連接管理員

  1. 以滑鼠右鍵按一下 [連接管理員] 區域的任何位置,然後按一下 [新增一般檔案連接]

  2. [一般檔案連接管理員編輯器] 對話方塊中,對 [連接管理員名稱] 輸入範例一般檔案來源資料。

  3. 按一下 [瀏覽]

  4. [開啟] 對話方塊中,找到範例資料夾,並開啟 SampleCurrencyData.txt 檔案。依預設,教學課程範例資料會安裝在 c:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Tutorial\Creating a Simple ETL Package\Sample Data 資料夾中。

若要設定區分地區設定屬性

  1. [一般檔案連接管理員編輯器] 對話方塊中,按一下 [一般]

  2. [地區設定] 設為 [英文 (美國)],將 [字碼頁] 設為 1252。

若要重新命名一般檔案連接管理員中的資料行

  1. [一般檔案連接管理員編輯器] 對話方塊中,按一下 [進階]

  2. 在屬性窗格中,做下列變更:

    • [資料行 0] 名稱屬性變更為 AverageRate。

    • [資料行 1] 名稱屬性變更為 CurrencyID。

    • [資料行 2] 名稱屬性變更為 CurrencyDate。

    • [資料行 3] 名稱屬性變更為 EndOfDayRate。

    [!附註]

    依預設,所有 4 個資料行一開始是設為字串資料類型 [DT_STR],且 OutputColumnWidth 為 50。

若要重新對應資料行資料類型

  1. [一般檔案連接管理員編輯器] 對話方塊中,按一下 [建議類型]

    Integration Services 會依據最前面的 100 個資料列,自動建議最適合的資料類型。您也可以變更這些建議選項,以增加或減少取樣資料、指定整數或布林資料的預設資料類型,或是加入空格以填補字串資料行。

    目前請暫時不要對 [建議資料行類型] 對話方塊中的選項做任何變更,並按一下 [確定],由 Integration Services 建議適合資料行的資料類型。這時會回到 [一般檔案連接管理員編輯器] 對話方塊的 [進階] 窗格,您可以在此檢視 Integration Services 建議的資料行資料類型(如果按一下 [取消],則不會對資料行中繼資料做出任何建議,而是使用預設的字串 (DT_STR) 資料類型)。

    在這個教學課程中,Integration Services 會對 SampleCurrencyData.txt 檔案的資料建議下列資料表中第二個資料行所顯示的資料類型。不過,目的地的資料行所需要的資料類型 (將在後面的工作中定義) 將顯示在下表的最後一個資料行。

    一般檔案資料行

    建議類型

    目的地資料行

    目的地類型

    AverageRate

    Float [DT_R4]

    FactCurrencyRate.AverageRate

    Float

    CurrencyID

    String [DT_STR]

    DimCurrency.CurrencyAlternateKey

    nchar(3)

    CurrencyDate

    Date [DT_DATE]

    DimTime.FullDateAlternateKey

    datetime

    EndOfDayRate

    Float [DT_R4]

    FactCurrencyRate.EndOfDayRate

    Float

    [CurrencyID][CurrencyDate] 資料行建議的資料類型與目的地資料表中的欄位資料類型不相容。因為 DimCurrency.CurrencyAlternateKey 的資料類型是 nchar (3),所以 [CurrencyID] 必須從 [DT_STR] 字串變更為 [DT_WSTR] 字串。另外,DimTime.FullDateAlternateKey 欄位是定義為 DateTime 資料類型;因此,[CurrencyDate] 需要從日期 [DT_Date] 變更為資料庫時間戳記 [DT_DBTIMESTAMP]。

  2. 在屬性窗格中,將資料行 [CurrencyID] 的資料類型從字串 [DT_STR] 變更為 Unicode 字串 [DT_WSTR]。

  3. 在屬性窗格中,將資料行 [CurrencyDate] 的資料類型從字串 [DT_DATE] 變更為資料庫時間戳記 [DT_DBTIMESTAMP]。

  4. 按一下 [確定]

本課程的下一項工作

工作 3:加入和設定 OLE DB 連接管理員

Integration Services 圖示 (小) 掌握 Integration Services 的最新狀態

若要取得 Microsoft 的最新下載、文件、範例和影片以及社群中的選定解決方案,請瀏覽 MSDN 或 TechNet 上的 Integration Services 頁面:

若要得到這些更新的自動通知,請訂閱該頁面上所提供的 RSS 摘要。