📦
migrationが実行されていないのにDBにテーブルが存在してmigrationが中断されてしまう時の対策
新機能追加に伴い、DBの既存テーブルに新たにカラムが追加されたので、dockerコマンドでmigrationを行おうとしたときに遭遇したエラー
SQLSTATE[42S01]: Base table or view already exists:[(以下省略)このあとに対象となるテーブル名がalready existsだよと書かれている]
「そのテーブル、すでに存在してますけど」と怒られているのは読めたが、そこからの解消に向けての動き方が理解できていなかったので、備忘として記録しようと思います。
対策
すでに作成されてしまっているテーブルを削除してから再度migration実行
今回はTablePlusというツールで行いました。
細かい削除方法は割愛。
環境にdockerが用いられているので、
docker-compose run --rm api php artisan migrate --path=xxxxxxx
コマンドを実行し、無事コマンド正常実行完了。
DBにも問題なくテーブルとカラムが追加され、解決。!
Discussion