2.4.x.Search§データベース・エボリューションリレーショナル・データベースを使う場合、スキーマ・エボリューションを追跡・整理する方法が必要になります。次のような場合には、データベース・スキーマへの変更を追跡するために高度なツールを利用したくなると思います。エボリューション・スクリプトによってデータベース・エボリューションを追跡します。いうディレクトリに保存することになっています。2.sql、...というように名前をつけます。各スクリプトはそれぞれ二つのパートで構成されています。試しに、基本的なアプリケーションを始めるための最初のエボリューション・スクリプトを作成してみましょう。パートはコメントで区切る必要があります。ファイルをセミコロンで区切ってから、それらをひとつひとつデータベースに対して実行します。入力する事でエスケープします。設定されていて、エボリューション・スクリプトが存在する場合は、エボリューションが自動的に有効化されます。いう設定を行なってください。自前でデータベースをセットアップするような自動化テストを書くような場合は、テスト環境においてエボリューションを無効化する設定を行いましょう。開発モードの場合リクエスト毎に、本番モードの場合アプリケーションの起動前にスキーマの状態をチェックします。スクリプトを実行してデータベース・スキーマを同期させるように促すエラーページが表示されます。ボタンをクリックすることで即座にスクリプトを実行することができます。§同時に行われた変更を同期させる仮に、プロジェクトに二人の開発者がいるとします。は新しいテーブルを必要とする新機能を担当しています。データベースで実行します。テーブルのスキーマ変更を要する新機能を担当しています。使っていることにしましょう)。作業を続行するにあたって、チームメイトが行った作業をマージする必要があります。実行しますが、マージにはコンフリクトがあります。このファイルの内容をマージしなければなりません。devBこのマージは簡単ですね。スクリプトを適用します。§不整合状態たまにエボリューション・スクリプトに間違いがあって、適用に失敗してしまうこともあるでしょう。データベース・スキーマを不整合状態としてマークします。続行する前に問題を手動で解決するようにあなたに促します。スクリプトにエラーを含む次のようなエボリューションを作成してみましょう。データベース・スキーマを不整合状態としてマークします。続行するためには、まずこの不整合を解決する必要があります。コマンドを実行します。エボリューション・スクリプトはまだ間違ったままなので、修正したいところです。置き換え、適切なスクリプトを実行します。これで、全ての間違いが修正されて、本来の作業に戻ることができます。開発モードでは単に開発用のデータベースを破棄して、全てのエボリューションを最初から適用しなおす方が簡単なことも多々あります。いうテーブルに保存されます。型のカラムに実際のエボリューション・スクリプトが保存されています。型のカラムに付くことがあります。小さいサイズの複数のスクリプトに分割することができます。スクリプトが実行されます。モードでエボリューションを使用する場合は、考慮しなければならない事が2つあります。これらを適用してサーバーを起動します。システムプロパティを設定します。持つ事は推奨されません。これを実行せず、サーバーも起動しません。プロパティを設定します。このプロパティが設定されている場合、データベースロックを使って一つのホストがエボリューションを適用する事を保証します。いうテーブルを作成します。使用していない複数ホストアプリケーションが複数ホストで動作している場合は、エボリューションはオフにするべきです。複数ホストがエボリューション・スクリプトを同時に実行しようとする可能性があり、片方が失敗しデータベースが不整合の状態のままになってしまう危険を伴います。