这个问题在这里已经有答案了:
如何为mysql中的多列指定唯一约束(14个答案)
两年前关门了。
伙计们,我在db有那张table
-------------------------------------------------------------
ID | COMPANY_ID | NAME | DESCRIPTION | BARCODE
-------------------------------------------------------------
我想做一个限制,唯一的条形码应该与相同的公司ID。。。。那么如何在mysql中做到这一点??
注意:我可以在表中输入多个公司id
1条答案
按热度按时间6rqinv9w1#
您需要在上添加复合唯一约束
COMPANY_ID
以及BARCODE
,到您的table。这基本上意味着对于上述两个字段,它将不允许具有重复值组合的行。它仍然允许其中任何一个单独使用重复的值。如:
(1, '')
组合不能存在于多行中。然而,(1, '')
,(1, 'def')
可以存在。因此它允许单独复制值(Company_id
在本例中)执行以下操作(相应地更改表和列名):