Rails - 意外地掉了我的桌子

时间:2010-11-24 16:57:58

标签: mysql ruby-on-rails

愚蠢而粗心,我不小心把桌子上的内容丢了。如何在RAils中重新创建该表?试图运行rake db:migrate但它没有创建新表。感谢。

3 个答案:

答案 0 :(得分:9)

您可以运行特定的迁移,无论它们是否已运行。

rake db:migrate:up VERSION=20101124121304

这将在2010年11月24日下午12:13:04创建的迁移上运行up方法。找到包含所需表的迁移文件,然后重新运行迁移。话虽如此,该表中的任何数据都无法恢复。

答案 1 :(得分:2)

你无法恢复数据,但我假设你只想要结构?

检查db/schema.rb是否是最新的。它应该包含表的当前结构定义。

您可以使用db/schema.rbrake db:setup重新创建整个数据库。我不知道只重建一个表的方法。

但也许您可以使用其他名称创建新数据库,然后复制结构。或者根据db/schema.rb中的内容自行重新创建表格。

答案 2 :(得分:0)

如果您DROP是一个MySQL表,除非您进行了备份,否则无法恢复该数据。