1

私はアウトソーシング開発者としてプロジェクトに取り組んでおり、テストおよび実稼働サーバーには開発環境のみにアクセスできません。

変更を展開するには、展開する機能の各サーバーで行う変更を含む SQL スクリプトを作成する必要があります。

例:

  • データベースに変更を加えるたびに、スクリプトをフォルダーに保存しますが、ビューを変更するスクリプトを送信したが、別の機能で作成した新しいテーブルを含めるのを忘れたため、これでは不十分な場合があります。

  • もう 1 つの状況は、SSMS GUI を介してテーブルを変更し、変更された列または新しい列を使用してスクリプトを作成するのを忘れ、後でスクリプトを送信してテストでテーブルを更新する必要がある場合です。

一部の機能はテスト用に送信でき、他の機能は直接本番環境に送信できるため (例: Excel ファイルをフィードするためのクエリ)、各環境に送信する必要があるものを追跡するのは困難です。

展開チームは私が送信したスクリプトを実行してデータベースを更新するだけなので、比較ツールなしで SQL Server データベースへの変更を管理/追跡するにはどうすればよいですか?

[編集]

私が現在使用しているツールは、SSMS、VS 2008 Professional、および TFS 2008 です。

4

3 に答える 3

1

xSQL Software がツールを使用してこれを行う方法を説明できます。

  • 展開チームには、ステージング データベースと運用データベースのスキーマ スナップショットを取得し、開発チームがアクセスできる共有に毎晩スナップショットをダンプする自動化されたプロセスがあります。
  • 開発者は毎朝、利用可能な本番データベースとステージング データベースの最新のスキーマ スナップショットを取得します。スキーマ比較ツールを使用して、開発データベースをステージング/本番スナップショットと比較し、変更スクリプトを生成します。

注: スキーマのスナップショットを取得するには、スキーマ比較ツールまたはスキーマ比較 SDK を使用できます。

于 2013-12-12T15:31:17.783 に答える
-1

特に SQL 形式で Liquibase を調べて、必要なものが得られるかどうかを確認してください。私はそれをデータベースに使用していますが、素晴らしいです。

すべてのオブジェクトを別々のスクリプトに保存できますが、Liquibase の「ビルド」を行うと、すべての変更を含む 1 つの SQL スクリプトが生成されます。本当に重要な部分は、Liquibase 構成を取得して、オブジェクトを正しい依存関係の順序に配置することです。つまり、一例として、外部キー制約の前にテーブルが作成されます。

http://www.liquibase.org/

于 2013-09-20T14:41:20.433 に答える