前記事: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の記述や設定が間違っているので根本解決ではない。
引き続き調査必要。