我有这张table
----------------------------------------
ID | company_id | barcode | product_name
----------------------------------------
我想为company和barcode列做一个唯一的约束,这样就不一样了 company_id
可以有相同的条形码号码。。。但你能做到吗 company_id
只能有空条形码。。。那么如何在mysql中做到这一点呢?
任何帮助都将不胜感激。。谢谢
2条答案
按热度按时间guicsvcw1#
可以将复合唯一键添加为:
允许同一公司名称的条形码列中有多个空值。
5gfr0r5j2#
需要添加复合唯一约束:
sql fiddle演示
细节:
mysql允许多个
NULL
具有唯一约束的列中的值。所以,基本上可以有多行包含
(1, null)
,在哪里1
是为company_id
以及null
为了barcode