SQL Server中

时间:2015-07-12 21:01:57

标签: sql sql-server

我有一个表Supplier,其中包含IDNameAddressPhoneNoShop等列。

我想根据商店在Name列添加唯一约束。

例如,如果SHOP A有两个供应商A和B,而SHOP B也有两个供应商C和B.如果我再次在A店添加供应商A,它将不允许它,因为A已经存在,但是如果我想要在商店A中添加供应商C,它允许我添加,因为供应商C仅在商店B中是唯一的。

我会如何完成它?

谢谢。

1 个答案:

答案 0 :(得分:1)

只需在namestop上创建一个唯一索引:

create unique index idx_supplier_shop_name on supplier(shop, name)

这应该完全符合您的要求。

作为注释:您可以使用表定义中的唯一约束或通过alter table等效地执行此操作。