laravel migrationでcolumn変更

Laravelでは、デフォルトのままではカラム変更のマイグレーションは行えない.
doctrine/dbal を composer経由で入手する必要がある.

作業手順をメモ.
概要は次の通り.

動作環境

  • laravel 5.5
  • php 7.2
  • composer 1.5.2

作業概要

今回は例として次のような変更を行う.

  • DB.menus.menu
    • 型 変更
      • int(10) -> varchar(50)
    • カラム名 変更
      • menu -> name

doctrine/dbal インストール

Laravelでは、デフォルトのままではカラム変更のマイグレーションは行えない.
doctrine/dbal を composer経由で入手する必要がある.

doctrine/dbal をインストール.

これで doctrine/dbal インストールは完了.

カラム名 変更

まずはカラム名を変更する.

menusテーブルの現状のschemaはこんな感じ.

schemaを変えたいときは毎回migrationファイルを生成する.
migrationファイル生成.

今回の編集のポイントは renameColumn() を使うこと.

編集後のファイルはこんな感じ↓

編集は一旦ここまで.

いざ, migration実行.

できたっぽい.
DB確認.

カラム名変更は以上で完了.

型 変更

次は name カラムの型を変更.
再度migrationFile作って同様に処理.

$ php artisan make:migration change_column_menus_table --table=menus

ファイル編集.
ここでのポイントは change() を使うこと.

migration実行.

$ php artisan migrate

DB確認.

ok.

今回は以上.

スポンサーリンク
336 x 280 – レクタングル(大)
336 x 280 – レクタングル(大)
  • このエントリーをはてなブックマークに追加

この記事が気に入ったら
いいね!しよう

スポンサーリンク
336 x 280 – レクタングル(大)
トップへ戻る