gpt4 book ai didi

mysql - 错误命名迁移 - rake db :migrate rejected

转载 作者:行者123 更新时间:2023-11-29 07:56:39 25 4
gpt4 key购买 nike

这种情况在我身上发生过几次,以下只是表名和一些参数的示例:

我在迁移期间添加详细信息时错误地命名了表rails g migration AddOwnerToRestaurant Owner:string并运行rake db:migrate

我销毁迁移 rails destroy 迁移 AddOwnerToRestaurant Owner:string 并运行 rake db:rollback;

然后我使用相同的详细信息正确重命名表 rails g migration AddOwnerToRestaurantsrake db:migrate...

我不断收到错误消息

StandardError: An error has occurred, this and all later migrations canceled:

SQLite3::SQLException: duplicate column name: owner

为什么所有者列不使用第一个 rails destroy 命令删除?我无法将新添加的内容迁移到表中。

最佳答案

rollback 不知道您的数据库曾经是什么样子。它会查看最后一次迁移并撤消 change 方法中的所有内容,假设您只调用 Rails 知道如何反转的方法 ( list )。

当您首先使用 rails destroy migration 删除迁移时,回滚无法按照您希望的方式完成其工作。不要删除迁移,而是回滚并重写,然后再次向上迁移。

此外,销毁迁移时不需要列信息

关于mysql - 错误命名迁移 - rake db :migrate rejected,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24963358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com