我有一个具有员工ID的现有列,但是当ID存在时(即302938492),会引入重复项并创建多个记录。一些ID是NULL,一些是允许的0000000。我想实现一个约束来禁止重复发生而不影响NULL或0。有没有办法用Unique索引做到这一点?
CREATE UNIQUE NONCLUSTERED INDEX UniqueExceptNulls
ON employees (employee_id) WHERE employee_id>0 OR IS NOT NULL
OR会检查约束吗?
ALTER TABLE employees
ADD CONSTRAINT uniqueint_emplid
CHECK (employee_id>0 OR IS NOT NULL);