Что такое ограничение исключения в PostgreSQL? Каков соответствующий термин (и образец сценария SQL) в Microsoft SQL Server?
1 ответ
В чем смысл ограничений исключения?
Это особый тип ограничений, который определяется как серия сравнений столбцов таблицы. Это гарантирует, что не может быть двух разных строк, для которых все сравнения верны.
В (упрощенном) примере, представленном в книге, ограничение не позволяет двум различным строкам иметь одинаковые
title
и то же самое
copies
.
Ограничения исключения очень сильны; у них гибкий синтаксис, который может учитывать гораздо более сложные случаи, чем то, что показано в вашей книге. Типичный пример - убедиться, что для таблицы с двумя столбцами временных меток нет перекрытия диапазонов меток времени по строкам.
Каков соответствующий термин (и образец сценария SQL) в Microsoft SQL Server?
Я не думаю, что такая функция существует в SQL Server. У него есть проверочные ограничения, но он не предлагает такой же набор функций, как ограничения исключения Postgres.