Ограничение UNIQUE, управляемое битовым столбцом

У меня есть таблица, что-то вроде

FieldsOnForms(
 FieldID int (FK_Fields)
 FormID int (FK_Forms)
 isDeleted bit
)

Пара (FieldID, FormID) должна быть уникальной, НО только если строка не удалена (isDeleted = 0).

Можно ли определить такое ограничение в SQLServer 2008? (без использования триггеров)

P.S. Установка уникальности (FieldID, FormID, isDeleted) добавляет возможность пометить одну строку как удаленную, но я хотел бы иметь возможность установить n строк (для каждого FieldID, FormID) на isDeleted = 1 и иметь только одну с isDeleted = 0

6
задан A-K 22 October 2010 в 14:40
поделиться