Ограничение целостности CHECK задает диапазон возможных значений для столбца. Ограничение целостности CHECK задает диапазон возможных значений для столбца. Например, если в столбце хранится процентное значение, то необходимо гарантировать, что оно будет лежать в пределах от 0 до 100. Например, если в столбце хранится процентное значение, то необходимо гарантировать, что оно будет лежать в пределах от 0 до 100. Для этого можно использовать тип данных, допускающий хранение целых значений в диапазоне от 0 до 255, совместно с ограничением целостности CHECK, которое будет обеспечивать соответствующую проверку значений. Для этого можно использовать тип данных, допускающий хранение целых значений в диапазоне от 0 до 255, совместно с ограничением целостности CHECK, которое будет обеспечивать соответствующую проверку значений.
Преимуществом ограничения целостности CHECK является возможность определения для одного столбца множества правил контроля значений. Преимуществом ограничения целостности CHECK является возможность определения для одного столбца множества правил контроля значений.
В основе ограничения целостности CHECK лежит: Проверка логического выражения, которое возвращает значение TRUE (истина). Проверка логического выражения, которое возвращает значение TRUE (истина). Либо значение FALSE (ложь). Либо значение FALSE (ложь).
Если возвращается значение TRUE, то ограничение целостности выполняется, и операция изменения или вставки данных разрешается. Если возвращается значение TRUE, то ограничение целостности выполняется, и операция изменения или вставки данных разрешается. Когда же возвращается значение FALSE, то операция изменения или вставки данных отменяется. Когда же возвращается значение FALSE, то операция изменения или вставки данных отменяется.
Например, для обеспечения правильности задания значения для столбца Семестр в таблице «Учебный- план» (оно должно находиться в диапазоне от 1 до 10) можно использовать следующее логическое выражение: Например, для обеспечения правильности задания значения для столбца Семестр в таблице «Учебный- план» (оно должно находиться в диапазоне от 1 до 10) можно использовать следующее логическое выражение: ((Семестр >=1) OR (Семестр =1) OR (Семестр <=10)))
Ограничение целостности при этом может быть задано на уровне столбца: Семестр INTEGER NOT CHECK ((Семестр >=1) OR (Семестр <=10)))
Или на уровне таблицы: CHECK ((Семестр >=1) OR (Семестр =1) OR (Семестр <=10)))
Допускается применение нескольких ограничений CHECK к одному и тому же столбцу. Допускается применение нескольких ограничений CHECK к одному и тому же столбцу. В этом случае они будут применены в той последовательности, в какой они указаны в инструкции. В этом случае они будут применены в той последовательности, в какой они указаны в инструкции.
При вводе записи (строки) в таблицу каждый столбец должен содержать какое- либо значение. Если значение для столбца не указано, то столбец заполняется значением NULL (конечно, если для него разрешено хранение значений NULL). Однако это нежелательно. Наилучшим решением в подобных ситуациях может быть определение для столбца значений по умолчанию.
Например, часто ноль определяется как значение по умолчанию для числовых столбцов, а «п/а» (не определено) – как значение по умолчанию для символьных столбцов.
Таким образом, определение для столбца значения по умолчанию гарантирует автоматическую подстановку этого значения, если при вставке новых строк значение для столбца не указано.
Использование значений по умолчанию довольно удобно, поскольку позволяет ускорить процесс ввода информации. Значительно расширяет область применения значений по умолчанию возможность вызова встроенных функций.
Например, если в столбце необходимо указать дату поступления на работу, то по умолчанию можно воспользоваться функцией GETDATE (). В этом случае, если не указана другая дата, при вводе строки в столбец дат поступления на работу будет помещаться текущая дата.