はじめに
laravelのmigration機能を使ってcreate tableを行う。
デフォルトの設定
laravelのmigrationファイルは以下の通り
“` database/migrations “` 配下にファイルが存在している。
database/migrations/ 合計 12 -rw-rw-r--. 1 coco nginx 746 11月 26 04:18 2014_10_12_000000_create_users_table.php -rw-rw-r--. 1 coco nginx 683 11月 26 04:18 2014_10_12_100000_create_password_resets_table.php
テーブルを追加する
migrationファイルの追加
php artisan make:migration create_hogehoge_table --create="hoge"
hogehogeというファイル名のintegration fileが作成され、hogeテーブル作成のphpファイルが作成される。
カラムを追加する
viで追加したいカラムを追加する
laravelで使うことができるメソッドは以下の公式ドキュメントに書いてある
https://laravel.com/docs/5.8/migrations
例えば、stringであればvarcharに置き換えられる
動作確認
migrate前にテーブルを確認する
mysql> show tables; +-------------------+ | Tables_in_laravel | +-------------------+ | migrations | | password_resets | | users | +-------------------+ 3 rows in set (0.00 sec)
デフォルトのusersテーブルと、残り2つはmigrationを実施する際に作成されるテーブル
migrateを実施する
php artisan migrate
問題なければ以下のようにテーブルが新規でhogeテーブルが作成される
mysql> show tables; +-------------------+ | Tables_in_laravel | +-------------------+ | hoge | | migrations | | password_resets | | users | +-------------------+ 4 rows in set (0.00 sec) mysql>
状況確認
migrationの状況を確認するには “` migrate:status “` を実行する。
[coco@instance-2 cms]$ php artisan migrate:status +------+------------------------------------------------+ | Ran? | Migration | +------+------------------------------------------------+ | Y | 2014_10_12_000000_create_users_table | | Y | 2014_10_12_100000_create_password_resets_table | | Y | 2019_11_28_161446_create_hogehoge_table | +------+------------------------------------------------+ [coco@instance-2 cms]$
RunがYの場合は、migrationが完了しているものになる。