$rails db:migrate、または、$rails db:migrateを行った後のエラー。
== 20200107095832 CreateMicroposts: migrating =================================
-- create_table(:microposts)
rails aborted!
StandardError: An error has occurred, this and all later migrations canceled:
SQLite3::SQLException: table "microposts" already exists: CREATE TABLE "microposts" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "content" text, "user_id" integer, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
・
・以下つづく
・
#原因
『この前に行ったコマンドのmigrationで何らかの手違いがあると思います。おそらく、migration処理の途中からエラーが起きていて、テーブルは生成されているが、テーブルを生成したmigrationは未実行のまま。といった状態なのかな?と思います。』
#解決策
$ rails db:migrate:reset
↑データベースのリセットを行った後。
$ rails db:migrate
↑もう一度マイグレーション
直った!
これでオッケーかと!
このコマンドで、マイグレーションを順に実行し、データベースに変更を加えていくんですね。
データベースを削除し、新しくmigrationファイルを修正して、もう一度migrationを行いたい場合に使うコマンドです。