1. ホーム
  2. sql-server

[解決済み] SQL Server Management Studio 2008 の "スクリプトの生成" タスクを自動化するにはどうすればよいですか?

2022-12-11 09:47:42

質問

SQL Server Management Studio 2008 でスクリプトの生成を自動化したいのですが、どうすればよいでしょうか。

今、私がしていることは:

  • データベースを右クリックし、タスク、スクリプトの生成..."。
  • 必要なエクスポート オプションをすべて手動で選択し、[select object"] タブで [select all] をクリックします。
  • エクスポート フォルダを選択します。
  • 最終的に "Finish" ボタンを押してください。

この作業を自動化する方法はありますか?

編集 : 私は の作成 スクリプトを生成したいのですが、変更スクリプトではありません。

どのように解決するのですか?

Brann が Visual Studio 2008 SP1 Team Suite で言及しているのは、Database Publishing Wizard のバージョン 1.4 です。これは sql server 2008 (もしかしたら professional だけ?) と一緒に \Program FilesMicrosoft SQL Server ³³³³³ にインストールされます。サーバーエクスプローラーからのVS呼び出しは、これを呼び出しているだけです。コマンドラインでも同じようなことができる。

sqlpubwiz help script

v1.4 が v1.1 と同じトラブル (ユーザーがロールに変換される、制約が正しい順序で作成されない) があるかどうかはわかりませんが、SSMS の Tasks->Generate Scripts オプションのように、オブジェクトを異なるファイルにスクリプトすることはできないので、私にとっては解決策とは言えません。現在、データベースパブリッシングウィザード(sqlpubwiz.exe)の改良版として、Scriptioの修正版(MS SMO APIを使用)を使用しています。現在、コマンドラインからスクリプトを実行することはできませんが、将来的にはこの機能を追加するかもしれません。

Scriptio はもともと Bill Graziano のブログに投稿されましたが、その後 Bill によって CodePlex にリリースされ、他の人々によって更新されました。SQL Server 2008 で使用するためにどのようにコンパイルするかについては、この議論をお読みください。

http://scriptio.codeplex.com/

編集: 私は、これを行うために RedGate の SQL Compare 製品を使うようになりました。これは、SQL パブリッシング ウィザードが持つべきすべての機能を代替する、非常に優れた製品です。データベース、バックアップ、またはスナップショットをソースとして選択し、出力先としてフォルダを選択すると、すべてをフォルダ構造にうまくダンプしてくれます。これは、同社の他の製品である SQL ソースコントロールが使用しているのと同じ形式です。