質問

こちらはより一般的な問題にどう取り扱いはデータベースのスキーマの変更、開発チームです。

またチーム開発者やデータベース利用中の開発は地元ではその人のボックスしを避けるために必要ウェブアクセス。で走る単一の中央データベースのインスタンスのどこかではないリアルオプションです。

についての判断するので時間を延長したり変更にデータベースのスキーマ、メールデータベースファイル(MYI/MYD)またはSQLファイルを実行し、又はその他の指示に電話するには何が必要なの変更コードを走地DBs.ることのない最適なアプローチしていた。同じ問題が発生する必要がある場合であって調整するDBスキーマに演出や生産の回新発売のご用意もあります。

のかと思って...どうでしょうが取り扱うこうの?ソースコードを使用していまSVN.

本当にご入力!

おかげさ マイケル

役に立ちましたか?

解決

私たちが過去に使用した

一つのアプローチは、必要なテスト/セットアップ・データと一緒に、スクリプトにデータベースの全体DDLです。変更があるときSVNで、それから、すべての開発者は、変更をプルダウンデータベースをドロップすると、スクリプトファイルから、それを再構築できることを保管します。

他のヒント

非常に少なくとも、あなたは、ソース管理下にデータベース内のすべてのオブジェクトのスクリプト(テーブル、ストアドプロシージャなど)を持っている必要があります。

私は、スキーマの変更を郵送すると、プロの開発チームのための現実的な選択肢ではないと思います。

私たちは、私がこのような状況に対処するために遭遇した最高だった私の前のチームの一つ上のシステムを持っています。

アプリケーションのナイトリービルドは、データベース(SQL Serverなど)のビルドが含まれています。データベースは、テストDBサーバに内蔵されてしまいました。各開発者は、夜間のDBがローカルDB環境に構築することをプルダウンする(これはしばらく前だった、と私は、彼らがSSISパッケージにアップグレード確信している)DTSパッケージを持っています。

これは、1つの場所でマスターコピーを保持し、新鮮な地元のdevのデータベースを維持するために、開発者に責任を置いています。

仕事をしな大きさのデータベースに時間をいただくため、ゼロから新しいDBいないのに最適です。のようなハーパーで、当社ではDDLにSVN.また、店舗のバージョン番号のデータベース。毎チェックインに変化するDBの添付が必要となりますスクリプト:

  1. ングは、データベースのスキーマ変更、既存のデータを適切に管理し、
  2. 最新のバージョン番号のデータベースです。

また番号のスクリプトとデータベースのバージョンとなるようなスクリプトを書い方を知って更新さらに、支店から歳以上の支店への新たな入力から開発者以外のものをデータベース名にディレクトリにアップグレードのスクリプト).

したがって、私のコピーをお客様の4GB DBことになるから年の古いバージョンをやりたいどのようにそのデータの版にしました昨日まで走り当社のスクリプトを及ぼす場合がありますので取扱いの改うのではなく、始めからやり直しは毎の挿入、更新、削除を行い以降のデータベースを作成します。

私たちは、データベーススキーマの非SQLの記述があります。アプリケーションが起動すると、それが実際のデータベーススキーマを使用して目的のデータベーススキーマを比較し、どのようなADD TABLEを実行するには、など、それは右見て、データベースを取得するために行う必要があるステートメントをインデックスを追加、列を追加します。

これは、すべてのケースを処理しません。時にはあなたは、スキーマリゾルバが処理できない何かを変更した場合は、しかし、ほとんどの時間、我々はそれを心配する必要がない場合は、データベースを削除して再作成する必要があります。

私は確かに、ソースコード管理にデータベーススキーマを保つと思います。

私の現在の仕事では、スキーマの変更がありますたびに、我々は、変更のためのSQLを書く(...テーブルのxyzが列を追加変更)とSVNにそれを置きます。その後、開発者は、このスクリプトを実行してテスト・データベースを更新することができます。それはかなり不器用だが、それは動作します。

前の仕事で、私は、アプリケーションの起動時に自動的にそれを期待したものに実際のデータベーススキーマを比較しますいくつかのコードを書いて、それが最新の状態にしなかった場合は、更新を行います。ほとんどの場合、これは、展開の理由で行われていた:私たちはソフトウェアの新しいコピーを出荷した場合、それは自動的にユーザーのデータベースを更新します。しかし、それは開発者にとっても便利でした。

私はこれを行うには、いくつかの一般的なSQLツールがあるはずだと思います。たぶんそこですが、私は1つを見たことがありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top