【laravel】テーブルのカラム名を変更する

laravelのマイグレーションを使って、カラム名を変更する方法

まずマイグレーションを生成

$ php artisan make:migration rename_users_table --table=users

doctrine/dbalをインストール

laravelのデフォルトでは、カラムを変更できないので

composer.jsonファイルでdoctrine/dbalを追加しないといけない

laravelドキュメント

$ composer require doctrine/dbal

renameColumnメソッドを使用

例)usersテーブル/電話番号のカラム名をnumberからtelに変更する

/**
* Run the migrations.
*
* @return void
*/
public function up()
{
  Schema::table('users', function (Blueprint $table) {
      $table->renameColumn('number','tel');
  });
}

/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
  Schema::table('users', function (Blueprint $table) {
      $table->renameColumn('tel','number');
  });
}

upメソッドには、変更する内容

downメソッドには、ロールバック時に実行する内容を記述する。

マイグレーションを実行

$ php artisan migrate

DBでカラム名が変更されたのを確認する

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA