删除Rails表&迁移

时间:2013-04-23 22:03:35

标签: ruby-on-rails ruby sqlite

如果已经讨论过这方面的答案,请指出正确的方向。我已经搜索过这个问题,但我发现的任何内容都不适用于我的情况。

我已创建了要删除的表格。我删除了模型和迁移,但是当我尝试重新创建它们然后迁移时,我得到以下内容:

SQLite3::SQLException: table already exists, etc....

我尝试使用SQLite管理器手动删除它们,但我不确定数据库文件的位置(其他帖子也没有帮助我)。顺便说一句,我在Win 7

我想知道这样做的正确方法。

3 个答案:

答案 0 :(得分:6)

这是再次创建表和迁移的另一种最简单的方法。如果您正在使用rails 3.运行此命令以删除数据库并再次创建它。

rake db:drop#to drop database

rake db:create#创建相同的数据库

rake db:migrate#以迁移数据。

答案 1 :(得分:4)

您可以生成迁移

 rails generate migration DropProducts

并用它来删除表格

class DropProducts < ActiveRecord::Migration
  def up
    drop_table :products    
  end
end

答案 2 :(得分:0)

我写了一篇关于处理这种情况的博客文章,它可能会有所帮助......

http://www.fmhcc.com.au/ruby/database-migrations-in-rails-and-when-to-start-from-scratch/