检查重复值

时间:2012-02-09 18:02:32

标签: c# nhibernate

假设我有下表:

PERSON :
ID INT
NAME STRING
LASTNAME STRING

在我的CRUD应用程序中,我不允许用户插入现有的NAME-LASTNAME组合。做这个的最好方式是什么?用户可以插入新人,也可以编辑已存在的人。

1 个答案:

答案 0 :(得分:2)

您没有指定数据库,但如果您使用的是SQL Server 2008或更高版本,则应在列上创建复合UNIQUE索引,因为只有活动用户应该是唯一的,过滤的是; < / p>

CREATE UNIQUE INDEX uix ON PERSON(NAME, LASTNAME) WHERE ACTIVE=1;

此索引仅对活动用户编制索引,并仅禁用重复用户。