Основы целостности данных
Первым этапом указания доменов таблицы является определение типов данных столбцов. Домен — это множество всех допустимых для столбца значений. Это понятие включает в себя не только контроль типов данных, но и набор значений, допустимых для столбца. Например, домен столбца Color таблицы Production.Product включает в себя тип данных nvarchar и ограничение размера до 15 символов. Домен может также определять символьные строки, допустимые для столбца, например: «красный», «синий», «зеленый», «желтый», «коричневый», «черный», «белый», «тиковый», «серый» и «серебристый». Дополнительные сведения см. в разделе Типы данных (компонент Database Engine).
Значения NULL
Значения NULL могут приниматься или отвергаться в качестве значений столбца. NULL — это специальное значение в базах данных, представляющее собой понятие неизвестного значения. Значение NULL отличается от символа пробела или значения 0. В действительности пробел является допустимым символом, а значение 0 — допустимым числом. Значение NULL означает, что неизвестно, что собой представляет данное значение. Оно отличается также и от строки нулевой длины. Если определение столбца содержит предложение NOT NULL, в него нельзя вставлять строки, имеющие значение NULL для этого столбца. Если определение столбца содержит ключевое слово NULL, значения NULL в этом столбце допустимы.
Если для столбца разрешены значения NULL, это может повысить сложность логических сравнений, в которых участвуют значения этого столбца. Стандарт ISO устанавливает, что результатом сравнения со значением NULL может быть не TRUE или FALSE, а UNKNOWN. Это вводит использование в операторах сравнения трехзначной логики, которую трудно реализовать правильно.
Ограничения, правила, значения по умолчанию и триггеры
Кроме типа данных и размера, столбцы таблицы имеют и другие свойства, которые являются важной частью механизма обеспечения целостности данных и ссылочной целостности таблиц в базе данных:
Целостность данных означает, что все вхождения столбца должны иметь допустимые значения. Данные должны иметь верный тип данных и правильный домен.
Ссылочная целостность означает правильность поддержки связей между таблицами. Данные, содержащиеся в одной таблице, должны указывать только на существующие строки в другой таблице.
Для обеспечения целостности обоих типов используются следующие объекты:
См. также