LoginSignup
6
6

More than 3 years have passed since last update.

【続】laravelのmigrationでハマった話 migrate:reset と migrate:fresh

Last updated at Posted at 2019-11-09

前記事:laravelのmigrationでハマった話 Cannot delete or update a parent row: a foreign key constraint fails

この後別の作業をしたため、
再度 php artisan migrate:refresh を叩く。


Integrity constraint violation: 1217 Cannot delete or update a parent row: a foreign key constraint fails (SQL: drop table if exists `comments`)

あれ...解決したはずのmigrationでまたエラー出てる?
じゃー全部テーブル削除してリセットするか。
php artisan migrate:reset

あれ...やっぱりエラー出てるね?(以後10回くらい繰り返す)

勘違いしていた点:

php artisan migrate:reset は、
アプリケーション全部のマイグレーションの「ロールバックをやり直す」コマンド。

全テーブルをドロップしてmigrateコマンドを実行する

「データベースから全テーブルをドロップ」し、
それからmigrateコマンドを実行したい場合は、
php artisan migrate:fresh を使う。

今回に関しては、migrate:fresh コマンドで無事migration通った。

日本語ドキュメントさんありがとう
https://readouble.com/laravel/5.5/ja/migrations.html

こちらのQiita助かりました
Laravel Migration コマンドまとめ

追記:rollbackで失敗するということは、
そもそもrollbackの記述や設定が間違っているので根本解決ではない。
引き続き調査必要。

6
6
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
6
6