作業 2: フラット ファイル接続マネージャの追加と構成

この実習では、先ほど作成したパッケージにフラット ファイル接続マネージャを追加します。パッケージにフラット ファイル接続マネージャを追加すると、フラット ファイルからデータを抽出できるようになります。フラット ファイル接続マネージャでは、フラット ファイルからデータを抽出するときに適用するファイルの名前と場所、ロケールとコード ページ、およびファイル形式を指定できます。また、列区切り記号も指定できます。さらに、各列のデータ型を手動で指定できます。[列の型の予測] ダイアログ ボックスを使用して、抽出したデータの列を Integration Services データ型に自動的にマップすることもできます。

通常は、操作する各フラット ファイルについて、新しいフラット ファイル接続マネージャを作成する必要があります。ただし、このチュートリアルでは、データ形式がまったく同じである複数のフラット ファイルからデータを抽出するので、フラット ファイル接続マネージャを 1 つだけパッケージに追加して、構成します。

このチュートリアルでは、フラット ファイル接続マネージャで次のプロパティを構成します。

  • 列名   フラット ファイルには列名がないので、フラット ファイル接続マネージャによって既定の列名が作成されます。これらの既定の列名は、各列の内容を明確に表していません。わかりやすい名前にするには、既定の列名を変更し、フラット ファイル データの読み込み先であるファクト テーブルと一致する名前を付ける必要があります。

  • データのマッピング   フラット ファイル接続マネージャのデータ型マッピングを指定します。このマッピングは、その接続マネージャを参照するすべてのフラット ファイル データ ソース コンポーネントが使用します。フラット ファイル接続マネージャでは、データ型を手動でマップできます。また、[列の型の予測] ダイアログ ボックスを使用してマップすることもできます。このチュートリアルでは、[列の型の予測] ダイアログ ボックスで予測されたマッピングを表示し、[フラット ファイル接続マネージャ エディタ] ダイアログ ボックスで必要なマッピングを手動で行います。

フラット ファイル接続マネージャでは、データ ファイルに関するロケール情報が提供されます。コンピュータが、地域オプション [英語 (米国)] を使用するように構成されていない場合、[フラット ファイル接続マネージャ エディタ] ダイアログ ボックスで追加のプロパティを設定する必要があります。

フラット ファイル接続マネージャを追加するには

  1. [接続マネージャ] 領域内を右クリックし、[新しいフラット ファイル接続] をクリックします。

  2. [フラット ファイル接続マネージャ エディタ] ダイアログ ボックスで、[接続マネージャ名] に「Sample Flat File Source Data」と入力します。

  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] の Name プロパティを「AverageRate」に変更します。

    • [列 1] の Name プロパティを「CurrencyID」に変更します。

    • [列 2] の Name プロパティを「CurrencyDate」に変更します。

    • [列 3] の Name プロパティを「EndOfDayRate」に変更します。

    注意

    既定では、4 つのすべての列が文字列データ型 [DT_STR] に設定され、OutputColumnWidth は 50 に設定されます。

列のデータ型を変更するには

  1. [フラット ファイル接続マネージャ エディタ] ダイアログ ボックスで、[型の推測] をクリックします。

    Integration Services は、最初の 100 行分のデータに基づいて最適なデータ型を自動的に予測します。この推測オプションを変更して、サンプルの行数を変更したり、整数またはブール データの既定のデータ型を指定したり、文字列の列の余白としてスペースを挿入することもできます。

    ここでは [列の型の予測] ダイアログ ボックスのオプションを変更せずに、[OK] をクリックして Integration Services に列のデータ型を予測させます。これによって [フラット ファイル接続マネージャ エディタ] ダイアログ ボックスの [詳細設定] ペインに戻ります。そのペインで Integration Services によって予測された列のデータ型を確認できます ([キャンセル] をクリックすると、列のメタデータの予測は行われず、既定の文字列データ型 (DT_STR) が使用されます)。

    このチュートリアルでは、SampleCurrencyData.txt ファイルのデータに対応するデータ型を Integration Services が推測します。推測されたデータ型は、下表の 2 列目に示されています。一方、変換先の列に必要なデータ型 (以降の手順で定義します) は、下表の 4 列目に示されています。

    フラット ファイルの列

    推測されたデータ型

    変換先の列

    変換先のデータ型

    AverageRate

    浮動小数点 [DT_R4]

    FactCurrencyRate.AverageRate

    Float

    CurrencyID

    文字列 [DT_STR]

    DimCurrency,CurrencyAlternateKey

    nchar(3)

    CurrencyDate

    日付 [DT_DATE]

    DimTime.FullDateAlternateKey

    datetime

    EndOfDayRate

    浮動小数点 [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. [OK] をクリックします。