知識を整理するための個人的な備忘録です。
イントロダクション
マイグレーションとは、テーブル定義を管理する仕組みのこと。
アプリケーション開発にあたってテーブル定義はしばしば変更されるため、変遷するテーブル定義を管理する必要がある。
コマンド
マイグレーション生成
$ php artisan make:migration create_テーブル名_table
table
オプションをつける事で既存のテーブルに列を追加できる。
$ php artisan make:migration add_追加するカラム名_to_追加するテーブル名_table --table=追加するテーブル名
生成されるファイルについて
新規作成の時
public function up() {
Schema::create(
//省略
);
}
既存のテーブルを変更した時
public function up() {
Schema::table(
//省略
);
}
up
にはphp artisan migrate
で実行される内容を。down
にはphp artisan migrate:rollback
で実行される内容を記述する。
マイグレーション実行
存在するファイル分は全て実行。
$ php artisan migrate
ロールバック
最後のマイグレーション操作をロールバック。
$ php artisan migrate:rollback
step
オプションで巻き戻す数を指定できる。
$ php artisan migrate:rollback --step=戻したいファイル数