ITエンジニアの成長ブログ

ITエンジニアとして行う勉強の発信&日々の生活で体験した楽しいことをゆるく発信

SQL ServerのIntegration Servicesでデータのエクスポートを行う

今回は、SQL Serverで使えるIntegration Servicesの簡単な使い方についてお話していこうと思います。

Integration Servicesとは?

Integration Servicesとは、テキストファイルやExcelファイルのインポートとエクスポートを行うことができる機能になります。

テキストファイルだけではなく、別RDBMSOracleDB2など任意のデータベースとの間でもデータのインポートとエクスポートを行うことができます。

SQL Serverには、bcpコマンドでテキストファイルからインポートとエクスポートを行うことができますが、Integration Servicesはその上位互換となるような位置づけで使える機能となります。

インストールは、SQL Serverをインストールするときに追加コンポーネントとして「Integration Services」を選択することで行うことができます。
以下はMicrosoft公式サイトから借用しました。

f:id:mr_star:20211012182204p:plain
SQL Server Integration Servicesのインストール画面

この記事では、データのエクスポートのやり方を見ていきたいと思います。

SQL Server Integartion Services(SSIS)でデータをエクスポートしてみる

それでは、データのエクスポートを試してみましょう。今回は、SQL Serverのサンプルデータベースである「AdventureWorks2016」のHumanResources.Departmentテーブルからデータをインポートして、テキストファイルに出力してみることにします。

SSMSを起動し、オブジェクトエクスプローラーからデータベース「AdventureWorks2016」を右クリックし、「タスク」から「データのエクスポート」を選択します。

f:id:mr_star:20211009161035p:plain
SSMSからデータのエクスポートを選択

以下の画面が開いたら、「Next」を押下します。

f:id:mr_star:20211009161139p:plain
Integration Services初期画面

データソースの選択画面が開きます。データソースは「SQL Server Native Client 11.0」を選択します。

今回はローカルにインストールしたSQL Serverからエクスポートするため、サーバーは「localhost」、認証方法は「Windows認証」、データベースは、「AdventureWorks2016」を選択し、「Next」を押下します。

f:id:mr_star:20211009161537p:plain
データソースの選択画面

変換先の選択画面が開きます。変換先は、「Flat File Destination」(これがテキストファイル)を選択し、ファイル名は「C:\temp\Department.txt」、ロケールは、コードページはデフォルトのまま、テキスト修飾子は「"」(ダブルクォーテーション)を入力し、「Next」を押下します。

f:id:mr_star:20211009162025p:plain
変換先の選択画面

テーブルのコピーまたはクエリの指定画面が開きます。「1つ以上のテーブルまたはビューからデータをコピーする」が選択されていることを確認し、「Next」を押下します。

因みに、「転送するためのデータを指定するためのクエリを記述する」を選択した場合は、エクスポートするためのデータをSQLで指定することができます。

f:id:mr_star:20211009162423p:plain
テーブルのコピーまたはクエリの指定画面

フラットファイルの変換先の構成画面が開きます。変換元テーブルまたはビューは「HumanResources.Department」を選択し、あとは以下の画面の通りに選択して、「Next」を押下します。

f:id:mr_star:20211009162544p:plain
フラットファイルの変換先の構成画面

パッケージの保存および実行画面は開きます。「すぐに実行する」チェックボックスがONになっていることを確認し、「Next」を押下します。

f:id:mr_star:20211009162918p:plain
パッケージの保存および実行画面

最後に確認画面が開きますので、「Finish」を押下します。するとデータのコピーが行われ、テキストファイルが作成されます。

f:id:mr_star:20211009163043p:plain
エクスポート確認画面

以下のようなエクスポートの完了画面が開いたら、処理が正しく完了できています。

f:id:mr_star:20211009163136p:plain
エクスポート完了画面

以下の通り、指定した変換先ファイルが作成されデータがエクスポートできました。

f:id:mr_star:20211009163304p:plain
エクスポートファイル格納場所確認
f:id:mr_star:20211009163356p:plain
エクスポートファイルの確認

おわりに

いかがでしたでしょうか。データをうまくやりくりするために使える機能ですので、システム開発の現場で役に立つこともあるかと思います。

今回はエクスポートのみ試してみましたが、インポートも同じような形でできますので、興味がある方は調べながら実施してみてはいかがでしょうか。

最後までお読みいただきありがとうございました。今回はこの辺で失礼いたします。