ruby-on-rails Rails -不小心把我的table摔了

yizd12fk  于 2022-11-19  发布在  Ruby
关注(0)|答案(4)|浏览(154)

由于我的愚蠢和粗心,我不小心把我的表和里面的内容一起掉了。我该如何在Rails中重新创建那个表呢?我试着运行rake db:migrate,但是它没有创建一个新表。谢谢。

6fe3ivhb

6fe3ivhb1#

您可以运行特定的迁移,而不管它们是否已经运行。

rake db:migrate:up VERSION=20101124121304

这将对2010年11月24日下午12:13:04创建的迁移运行up方法。找到包含所需表的迁移文件,然后重新运行迁移。也就是说,该表中的任何数据都不可恢复。

lf5gs5x2

lf5gs5x22#

你不能恢复数据,但我想你只是想要结构?
检查db/schema.rb是否是最新的。它应该包含表的当前结构定义。
您可以使用rake db:setupdb/schema.rb重新创建 * 整个数据库 *。我不知道有什么方法可以只重新创建一个表。
但是,也许您可以使用不同的名称创建一个新的数据库,然后复制该结构,或者根据db/schema.rb中的内容自己重新创建一个表。

mwngjboj

mwngjboj3#

如果您DROP一个MySQL表,您无法恢复该数据,除非您已经做了备份。

vx6bjr1n

vx6bjr1n4#

此过程分为两步:
1.仅使用table_name创建表。
1.运行以下命令:

rake db:migrate:redo VERSION=20220609102335

相关问题