SQLite3::SQLException: table "users" already exists エラー
・なぜ発生したか、経緯
sorceryを利用して、ログイン機能を追加しようとした。'rails g sorcery:install'を使用した後に、'rails db:migrate' を実行し、userテーブルを作成した。
その後、必要なカラムがないことに気づいたため、'rails destroy modle user'を実行し、必要なカラムを入れ、db:migrateし直す。そこで
Caused by:
SQLite3::SQLException: table "users" already exists
上記のエラーが出た。
・原因
マイグレーションファイルなどを削除しても、dbには残っているため。
・解決方法
(ターミナルにて)
rails db
sqlite> .tables
(テーブル一覧)
ar_internal_metadata schema_migrations users
(不要なusersテーブルを確認)
sqlite> drop table users;
(usersテーブル削除)
ctrl + d で抜ける
・参考
Rails DBエラー】SQLite3::SQLException: table "✖︎✖︎✖︎" already existsが出るときの解決
この記事が気に入ったらサポートをしてみませんか?