-
マイグレーションの作成方法:
yiic
コマンドを使用して、マイグレーションを作成します。ターミナルで以下のコマンドを実行します:yiic migrate create migration_name
migration_name
は、作成するマイグレーションの名前です。このコマンドを実行すると、新しいマイグレーションファイルがprotected/migrations
ディレクトリに作成されます。
-
マイグレーションファイルの編集:
- 作成されたマイグレーションファイルをテキストエディタで開き、
up
メソッドとdown
メソッドを編集します。 up
メソッドには、データベースのスキーマの変更や更新を記述します。例えば、新しいテーブルの作成や既存のテーブルのカラムの追加などです。down
メソッドには、up
メソッドで行った変更を元に戻す処理を記述します。
- 作成されたマイグレーションファイルをテキストエディタで開き、
-
マイグレーションの実行:
- 以下のコマンドを使用して、マイグレーションを実行します:
yiic migrate
このコマンドを実行すると、
protected/migrations
ディレクトリにある未適用のマイグレーションファイルが順番に実行されます。
- 以下のコマンドを使用して、マイグレーションを実行します:
-
よく発生するエラーと解決方法:
-
エラー: "Table 'xyz' already exists" 解決方法: マイグレーションファイル内で既に存在するテーブルを作成しようとしている可能性があります。テーブルが既に存在する場合は、
up
メソッド内の該当するコードをコメントアウトするか、テーブルの作成をスキップするように修正します。 -
エラー: "Unknown column 'xyz' in table 'abc'" 解決方法: マイグレーションファイル内で存在しないカラムを使用しようとしている可能性があります。カラムが存在しない場合は、
up
メソッド内の該当するコードを修正するか、カラムの追加を行います。 -
エラー: "Syntax error or access violation: xyz" 解決方法: マイグレーションファイル内のSQL文に構文エラーがある可能性があります。SQL文を再確認し、正しい文法に修正します。
-
以上が、Yii 1.1でのマイグレーションの作成方法とエラーの解決方法です。これらの手順とコード例を参考に、データベースのスキーマ変更をスムーズに行うことができます。