So-net無料ブログ作成
検索選択

SQL Server 2008 R2 SSISパッケージで Import/Export を定期実行する

SSISパッケージをウィザードで作成し、SQLエージェントで実行させる。
.csv ファイルのImportのケースについて記述。Exportは、この逆の設定になる。

DTS wizard を起動する
   "C:\Program Files\Microsoft SQL Server\100\DTS\Binn\DTSWizard.exe"

データソースの選択
  全般ページで、
     データソース = "フラットファイルソース"
     ファイル名 = import する .csv ファイルを選択
     ロケール = "日本語
     コードページ = 932(shift-JIS)を選択
     形式 = "区切り記号"
     テキスト修飾子 = '"'(ダブルクオテーション)
     ヘッダ行区切り記号 = {CR}{LF}
     スキップするヘッダ行 = 0
     "先頭データを列名として使用する" をチェック
  詳細設定ページで、
     import後の 各列 の 型定義
  [次へ]

変換先の選択
  変換先 = "SQL Server Native Client 10.0"
  サーバ名 = import先のサーバ名
  認証 = "SQL Server 認証を使用する"
         ユーザ名/パスワードを指定する
  データベース = import先のデータベース名
  [次へ]

コピー元のテーブルおよびビューを選択
  変換元 = import する .csv ファイル
  変換先 = import先のテーブル名
  必要に応じて、[マッピングの編集] や [プレビュー] を行う
  [次へ]

パッケージの保尊および実行
  "すぐに実行する" をチェック
  "SSISパッケージを保存する" をチェック
     "ファイルシステム" を選択
     (SQL Server内に保存すると、転用ができずメンテナンス性も悪くなる)
     "パッケージの保護レベル" は "すべてのデータをパスワードで暗号化する"
     パスワードを設定する
  [次へ]

SSISパッケージの保存
  名前/説明 = 任意の名前、説明を設定
  ファイル名 = SSISパッケージの出力先のパスを指定
               (D:\ssis\CsvImport.dtsx など)
  [次へ]

ウィザードの完了
  設定内容の一覧を確認し [完了] とすると、
  .dtsx ファイルが出力され、データ import が実施される


SQL Server Management Studio で job を構成する

SQL Serverエージェント > ジョブ を右クリックして "新しいジョブ" を開く
  全般ページ
     名前 = 任意の名前を指定
     説明 = 必要により記述

  ステップ ページ
     ※import先のテーブルに既にデータがある場合 trancate する(つまりdelete&insert)
     新規作成
        ステップ名 = 任意の名前を指定(RunDeleteなど)
        種類 = Transact-SQLスクリプト(T-SQL)
        データベース = import先のデータベース名
        コマンド = USE [DBname]
                   GO
                   Truncate Table [dbo].[TableName];
        [OK]
     新規作成
        ステップ名 = 任意の名前を指定(RunSSISpkgなど)
        種類 = SQL Server Integration Service パッケージ
        パッケージソース = ファイルシステム
        パッケージ = 作成したSSISパッケージのパスを指定
        [OK]
        設定したパッケージのパスワードを聞かれるので入力する

  スケジュールページ
     定期実行するスケジュールを設定する
     [OK]
 
(Windows Server 2008 R2, SQL Server 2008 R2, SSIS, DTS) 
 

タグ:SSIS SQL
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。