У меня есть таблица с тремя столбцами, идентификатор отношения, идентификатор связанного объекта и значение объекта. Таблица может иметь столько повторных отношений ID-Value, за исключением случаев, когда значение равно 0 для одного и того же идентификатора.Ограничение нескольких столбцов
Correct Incorrect +--------+--------+-------+ +--------+--------+-------+ | PK_ID | ID | Value | | PK_ID | ID | Value | +--------+--------+-------+ +--------+--------+-------+ | 1 | 1 | 1 | | 1 | 1 | 1 | | 2 | 1 | 1 | | 2 | 1 | 1 | | 3 | 2 | 0 | | 3 | 2 | 0 | +--------+--------+-------+ | 4 | 2 | 0 | +--------+--------+-------+
Вопрос заключается в том, как я могу обеспечить его, чтобы не допустить повторного отношения ID-значение, если значение равно 0?
не может сделать это с помощью проверочного ограничения. Используйте отфильтрованный индекс или представление с уникальным ограничением, зависящим от версии SQL Server. –
@Martin да, это именно то, что мне нужно, но я на SQL Server 05 – PedroC88
Тогда вам нужно использовать технику с индексированным представлением. В моем ответе есть пример в ссылке «Возможная дубликация». –