gpt4 book ai didi

ruby-on-rails - rake 数据库 :migrate error tables

转载 作者:数据小太阳 更新时间:2023-10-29 07:46:17 25 4
gpt4 key购买 nike

我正在尝试运行 rake db:migrate 并在控制台中收到错误消息。

好像我正在创建一个已经存在的表,但我不知道如何删除旧表,或重置数据库以重新开始。

我没有任何用户,所以删除或重新开始都不是问题。

create_table(:users) rake aborted! StandardError: An error has occurred, this and all later migrations canceled:

SQLite3::SQLException: table "users" already exists: CREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "email" varchar(255) DEFAULT '' NOT NULL, "encrypted_password" varchar(255) DEFAULT '' NOT NULL, "reset_password_token" varchar(255), "reset_password_sent_at" datetime, "remember_created_at" datetime, "sign_in_count" integer DEFAULT 0 NOT NULL, "current_sign_in_at" datetime, "last_sign_in_at" datetime, "current_sign_in_ip" varchar(255), "last_sign_in_ip" varchar(255), "created_at" datetime, "updated_at" datetime) /Users/jovanhernandez/.rvm/gems/ruby-2.1.2/gems/sqlite3-1.3.9/lib/sqlite3/database.rb:91:in `initialize'

最佳答案

如果您不介意删除数据,您可以运行

rake db:drop
rake db:create
rake db:migrate

这应该可以解决问题。否则,您可以暂时注释掉导致迁移中的 change(或 up)方法出现问题的部分内容,然后运行迁移。迁移运行后,取消对迁移的注释。

这样做可以让 rails 接受迁移是最新的。

关于ruby-on-rails - rake 数据库 :migrate error tables,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26533461/

25 4 0