使用 mysql 和 Rails 迁移创建多列不同索引
尝试在 Rails 迁移中执行此语句以生成多列唯一约束/索引:
add_index :contributors, [:project_id, :user_id], :unique=>true
我还尝试为该方法提供可选的 :name ,但仍然失败。该表中没有现有键
Mysql::Error: Duplicate entry '5-9' for key 'distinct_user_and_project': CREATE UNIQUE INDEX `distinct_user_and_project` ON `contributors` (`project_id`, `user_id`)
如何使用执行和直接 sql 创建这个短键?谢谢。
Trying to execute this statement in a rails migration to generate a multi column unique constraint/index:
add_index :contributors, [:project_id, :user_id], :unique=>true
I've also tried providing an optional :name to the method, but still getting the failure. There are no existing keys in this table
Mysql::Error: Duplicate entry '5-9' for key 'distinct_user_and_project': CREATE UNIQUE INDEX `distinct_user_and_project` ON `contributors` (`project_id`, `user_id`)
How do I create this short of using execute and straight sql? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
它显然是错误的(
重复条目'5-9'
),您的数据不是唯一的,所以您不能在那里添加这样的索引Its clearly in error (
Duplicate entry '5-9'
) that your data is not unique so You can't add such index there