0
0

More than 3 years have passed since last update.

【Laravel】テーブル作成後にカラムを追加したい場合

Posted at

はじめに

テーブル(マイグレーションファイル)を作成した後に、カラムを追加したくなるときってありますよね。
私は、Laravelを学習し始めた頃、既に作成しているマイグレーションファイルにカラムを追加して、もう1回php artisan migrateすればいいんじゃないのって思っていました。
しかし、それではrollbackするときに、downメソッドによりテーブルが削除されてしまうので、それまでにテーブルに格納していたデータがなくなってしまいます。
そこで、以下の方法でカラムを追加していきます。

カラムの追加方法

ターミナルもしくはコマンドプロンプトを起動し、

php artisan make:migration --table=[テーブル名] [マイグレーションファイル名]

を実行してマイグレーションファイルを追加します。
追加したマイグレーションファイルにカラムを追記して、php artisan migrateを実行すると、カラムを追加することができます。

マイグレーションファイルのupメソッドの記述

・テーブル作成用

作業日時_create_users_table.php
public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->text('name');
        $table->timestamps();
    });
}

・カラム追加用

作業日時_users_add_columns.php
public function up()
{
    Schema::table('users', function (Blueprint $table) {
        $table->text("mail")->nullable();
    });
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0