【问题标题】:Rake db:migrate error after db:reset在 db:reset 之后 Rake db:migrate 错误
【发布时间】:2014-07-26 00:31:38
【问题描述】:

我在运行 rake db:migrate 时遇到问题,即使在 rake db:reset 之后出现错误,它说要运行 rake db:migrate 并出现相同的错误。我该怎么做才能使它工作并完成迁移

SQLite3::SQLException: table "users" already exists: CREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_digest" varchar(255), "created_at" datetime, "updated_at" datetime) /Users/alextuazon/.rvm/gems/ruby-2.1.0/gems/sqlite3-1.3.9/lib/sqlite3/database.rb:91:in `initialize'
/Users/alextuazon/.rvm/gems/ruby-2.1.0/gems/sqlite3-1.3.9/lib/sqlite3/database.rb:91:in `new'
/Users/alextuazon/.rvm/gems/ruby-2.1.0/gems/sqlite3-1.3.9/lib/sqlite3/database.rb:91:in `prepare'
/Users/alextuazon/.rvm/gems/ruby-2.1.0/gems/sqlite3-1.3.9/lib/sqlite3/database.rb:134:in `execute'
/Users/alextuazon/.rvm/gems/ruby-2.1.0/gems/activerecord-4.1.2/lib/active_record/connection_adapters/sqlite3_adapter.rb:334:in `block in execute'

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    使用rake db:drop 删除表,然后使用rake db:migrate 创建它们以及迁移所做的所有其他操作。

    编辑:此外,阅读Difference between rake db:migrate db:reset and db:schema:load 的答案可能会有所帮助

    【讨论】:

    • 那么我是否必须再次执行整个迁移过程?
    • @user3817684 是的 - 如果您不想运行迁移并且只恢复到架构,请执行:db:reset,根据我链接到的 SO Q&A,“db:drop, db:setup "
    猜你喜欢
    • 2012-05-05
    • 2018-10-06
    • 2015-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-01
    • 2018-02-05
    • 2014-07-16
    相关资源
    最近更新 更多