【问题标题】:Rails - rake db:reset not clearing my databaseRails - rake db:reset 不清除我的数据库
【发布时间】:2013-05-27 10:33:56
【问题描述】:

这里是 Rails 新手,正在尝试使用 db\seeds.rb 文件等

首先,我想使用rake db:reset 清除数据库中的所有数据,但它不起作用!

这是我的输出

C:\Sites\sportproject>rake db:reset 无法删除 db/development.sqlite3 : # db/development.sqlite3 已经存在 -- create_table("sports", {:force=>true}) -> 0.0640 秒 -- create_table("teams", {:force=>true}) -> 0.0340 秒 -- add_index("teams", ["sport_id"], {:name=>"index_teams_on_sport_id"}) -> 0.0160 秒 --initialize_schema_migrations_table() -> 0.0000 秒 -- 假设_migrated_upto_version(20130531012951, ["C:/Sites/sportproject/db/migra 你"]) -> 0.0000 秒

然后我用rails console 登录我的控制台并输入Sport.all(Sport 是我的一个模型的名称),它显示仍有数据!

我做错了什么?

【问题讨论】:

标签: ruby-on-rails ruby rake


【解决方案1】:

我在 Patrik 的链接中找到了答案。

这是因为我在 Windows 上,因为数据库可能正在被另一个进程使用,因此出现“Permission Denied”消息。我只需要确保没有其他进程正在使用数据库。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题。原因是因为我在 IRB 或控制台上运行 rake db:reset。相反,我退出控制台并再次运行代码并且它工作。也许它也会为你工作。

    【讨论】:

      【解决方案3】:

      如果你使用的是 Linux 和 postgresql,你可以这样做

      sudo service postgresql restart
      

      然后

      rake db:reset
      

      我认为用mysql是

      sudo service mysql restart
      

      【讨论】:

        猜你喜欢
        • 2023-03-30
        • 1970-01-01
        • 2011-09-15
        • 1970-01-01
        • 1970-01-01
        • 2012-01-23
        • 1970-01-01
        • 2016-04-14
        • 1970-01-01
        相关资源
        最近更新 更多