テーブルの作成
migrationファイルの作成
以下のコマンドを実行してマイグレーションファイルを作成します。指定するファイル名を「create_hoge_table」にすると、hogeテーブルを作成するためのコマンドが追加されます。
$ php artisan make:migration create_hoge_table
Created Migration: 2019_04_15_063922_create_hoge_table
コマンドが成功すると、database/migrationsフォルダにファイルが作成されます。
$ cat database/migrations/2019_04_15_063922_create_hoge_table.php
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateHogeTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('hoge', function (Blueprint $table) {
$table->bigIncrements('id');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('hoge');
}
}
マイグレーションはup
とdown
のメソッドを含んでいます。
up
は追加や変更処理を実行し、down
はup
メソッドが行った操作を元に戻します。
マイグレーションの実行
以下のコマンドを実行するとdatabase/migrationsフォルダ配下のマイグレーションファイルのうちまだ反映されていないものが一括反映されます。
$ php artisan migrate
マイグレーションを強制する場合は、--force
フラグを指定します。
$ php artisan migrate --force
直前に実行した反映を取り消したい場合は、ロールバックを実行します。
# php artisan migrate:rollback
直近の数回の実行を取り消したい場合は、--step
フラグを指定します。
# php artisan migrate:rollback --step=5
全てのマイグレーションをまとめて取り消す場合はリセットを実行します。
$ php artisan migrate:reset
以上です。
参考
- 竹澤勇貴・栗生和明・新原雅司・大村創太郎(2018)『PHPフレームワーク Laravel Webアプリケーション開発 バージョン5.5LTS対応』ソシム
- Laravel Document
コメント