【问题标题】:How to completely delete a DB on Ruby on Rails?如何在 Ruby on Rails 上完全删除数据库?
【发布时间】:2016-02-26 01:02:22
【问题描述】:

我有一个小的 Ruby on Rails 应用程序,但我在创建模型时犯了一个错误,等等。

我怎样才能完全删除它的数据库?不重置迁移或删除其表,而是删除所有与数据库相关的文件? (schema.rb等)

【问题讨论】:

标签: ruby-on-rails ruby database ruby-on-rails-3 rake


【解决方案1】:

删除数据库

rake db:drop

然后用于创建数据库

rake db:create

迁移

rake db:migrate

种子

rake db:seed

【讨论】:

    【解决方案2】:

    删除这些文件不会从您的系统中删除数据库。你永远不应该删除你的schema.rb,因为它包含你的数据库结构。 (并且不是数据库记录本身。)如果您只是创建一个新模型,Rails 不会自动创建数据库表(迁移就是这样做的)。

    如果您仍想删除整个数据库(结构数据),这是您需要的命令(在调用rake -T时找到)

    rake db:drop  # Drops the database from DATABASE_URL or 
                  # config/database.yml for the current RAILS_ENV 
                  # (use db:drop:all to drop all databases)
    

    默认情况下,RAILS_ENV 未设置。如果您在此状态下调用 rake db:drop,所有与此应用关联的数据库都将被删除。为了放弃,比如说,只有发展:

    export RAILS_ENV=development
    rake db:drop
    

    您可以对 testproduction 环境执行相同的操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-09
      • 1970-01-01
      • 2016-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多