0

Visual Web Developer 2010 Express でローカル サイトとして構築され、運用サーバーにデプロイされたデータ ドリブン Web サイト (SQL Express 自動添付 mdf ファイル) があります。サイトはローカルに保存され、バージョン管理のために SVN にチェックインされます。アプリケーションの更新は、(組み込みの開発 Web サーバーを使用して) ローカル コピーに対して行われ、次に、Web サイトのコピー機能を使用して運用サーバーにコピーされます。

私が抱えている問題は、データベース スキーマに加えられた変更をローカルでテストできることですが、運用データを含むファイル全体を上書きせずに、これらの変更を運用データベースにコピーする方法がないようです。

本番データベースに直接接続して、必要な変更を手動で行うこともできると思いますが、これには、特に多数の変更が行われた場合に、エラーが発生する余地が大きくなります。VWD で変更をスクリプト化する方法もありません。

私の質問は 、VWD 2010 Express でこれらのデータベース スキーマの更新を処理する最善の方法は何ですか?

Stack Overflow と Google を検索しても成果が得られませんでした。

乾杯、
JE

4

1 に答える 1

1

SQLExpressユーザーインスタンスと呼ばれるものを参照していると思います。SQL Expressユーザーインスタンスに関するこの優れた記事から、 SSEUtilというツールを使用して、ローカルユーザーインスタンスに対してコマンドを実行できます。私がローカルと言ったことに注意してください。

残念ながら、これはVWD 2010でスキーマの更新を最適に処理する方法についてのあなたの質問に対する直接の答えではありません。これは、これを行う方法がないためです。ユーザーインスタンスはローカルであり(接続は名前付きパイプを使用します)、本番環境内で更新を行う必要があります。SSEUtilを使用する方が、サーバーにVWD 2010をインストールしたり、独自のコードを記述して更新を手動で実行したりするよりも優れています。

実際、データベースが本番環境にリリースされると、更新スクリプトが更新される唯一の方法になります。明らかに、開発データベースのバックアップを実行して本番環境に復元できることはめったにありません。このプロセスを簡素化できるプロフェッショナルグレードの製品がありますが、実際には更新スクリプトから始めます。

1つの提案:可能であれば、ユーザーインスタンス化されたSQLExpressから少なくとも通常のSQLExpressインスタンスに移行します。

于 2011-03-23T19:29:38.897 に答える