未找到 id 的唯一索引

No unique index found for id

提问人:Dhivya 提问时间:8/23/2023 最后编辑:dbuggerDhivya 更新时间:8/23/2023 访问量:92

问:

我在尝试使用 Upsert all 时遇到错误“找不到 id 的唯一索引”。但是默认情况下,ID 不是唯一索引吗?最初,我们在 rails 3 中创建了应用程序,现在我们已将其迁移到 rails 6。此问题是否与迁移有关?

我添加了以下迁移,它工作正常

def change
  add_index :order_lists, :id, unique: true, algorithm: :concurrently
end
Ruby-on-Rails Ruby-on-Rails-6

评论

1赞 spickermann 8/23/2023
取决于您最初在该表上创建列的方式或迁移方式。id
0赞 zauzaj 8/24/2023
我认为您不应该在主键上添加这样的索引,因为它默认情况下是唯一的。以下是有关类似 Rails 问题的更多上下文 github.com/rails/rails/issues/40059

答: 暂无答案