web-dev-qa-db-ja.com

プログラムでストアドプロシージャの結果をテキストファイルにダンプする

ストアドプロシージャの実行結果をテキストファイルに保存するにはどうすればよいですか? SQLスクリプト(Management Studioでも外部ユーティリティでもない)からこれを行う必要があり、正しい文字エンコーディング(この場合はUnicode)を保持する必要があります。

2
bpiec

最も簡単な方法は、2ステップのアプローチです。

  1. ストアドプロシージャの出力をSQLサーバーデータベースの物理テーブルに記録します。例えばinsert into dbo.X_sp_name_out exec dbo.sp_name
  2. 使用する BCP OUTまたはSQLCMDは、データをテキストファイルにエクスポートします。
  3. オプションですが、重要ですテーブルの増加を管理します)古いレコードをパージするパージプロセスを実行するか、SPを次に実行する前にテーブルを切り捨てます。

必ず使用してください N'your unicode data' データを保存するとき。

SSISを使用して同じことを行い、SQLエージェントジョブを使用してパッケージをスケジュールすることもできます。

1
Kin Shah