2

既知のフォルダーにファイル xyz.mdb を ftp 経由でダウンロードする .bat ファイルがあります。

このアクセス データベースには、毎月異なる名前のテーブルがあります。

スケジュールされたジョブを介して、bat ファイルを起動し、特定のデータベースの SQL Server に xyz.mdb をインポートする必要があります (ドロップして再作成できます)。

助言がありますか?私はssisがあまり得意ではありません。

4

1 に答える 1

0

FTP ダウンロードには、BAT ファイルの代わりに WinSCP などを使用します。プロセス実行タスクを使用して呼び出し、成功または失敗に基づいてプロセス フローを制御できます。成功したら、For Each ループ コンテナーを追加し、"既知のフォルダー" をポイントして、各ファイル名を変数に割り当てます。次に、ループ内で、各 Access DB から読み取るデータ フロー タスクを追加できます。

最初のトリッキーな部分は、接続の定義です。接続文字列を生成するには、式を使用する必要があります。手動で生成したものから開始し、ファイル名を変数に置き換えて式で再構築します。

2 番目に注意が必要な部分は、接続スタックです。Access データベース エンジン 2010 は 64 ビットで OLE DB を提供しますが、奇妙なことに一度に 1 つのフレーバー (64 ビットまたは 32 ビット) でしか機能しません。これは、64 ビット マシンでも BIDS が常に 32 ビットであるため、多くの混乱を引き起こします。

代わりに ODBC ドライバーの使用を開始しました。Microsoft は、OLE DB は将来廃止される予定であり、(クラウドに合わせて) ODBC が進むべき道であると既に述べています。最新の Windows OS には 32 ビット用の Access ODBC ドライバーが付属しており、64 ビット用の Access データベース エンジン 2010 をインストールして 64 ビット ODBC ドライバーを入手できます。

于 2012-12-02T04:09:58.683 に答える