1. Обязательное наличие данных. Некоторые столбцы в базе данных должны содержать значения в каждой строке; строки в таких столбцах не могут содержать значения NULL. Например, в базе данных для каждого заказа должен существовать соответствующий заказчик, сделавший этот заказ. Поэтому столбец Заказчик в таблице Договора является обязательным. Можно указать СУБД, что запись значения NULL в такие столбцы недопустима.
2. Условие на значение. У каждого столбца в базе данных есть свой домен, т.е. тот набор значений, которые допускается хранить в данном столбце. Можно указать СУБД, что запись значений, не входящих в определенный диапазон, в такие столбцы недопустима.
3. Целостность таблицы(сущности). Первичный ключ таблицы должен в каждой строке иметь уникальное значение, отличное от значений во всех остальных строках. Можно указать СУБД, чтобы она обеспечивала целостность таблиц.
4. Ссылочная целостность. В реляционной базе данных каждая строка таблицы-потомка с помощью внешнего ключа связана со строкой таблицы-предка, содержащей первичный ключ, значение которого равно значению внешнего ключа. В учебной базе данных значение столбца Bno таблицы STAFF связывает служащего с офисом, в котором он работает. Столбец Bno должен содержать значение из столбца Bno таблицы BRANCH; в противном случае служащий будет закреплен за несуществующим офисом. Можно указать СУБД, чтобы она обеспечивала ограничение на значения внешнего ключа.
5. Бизнес правила. Обновление информации в базе данных может быть ограничено деловыми правилами, которым подчиняются сделки, представляемые подобными обновлениями. Например, организация, использующая базу данных, может установить деловое правило, запрещающее принимать заказы на продукцию в количествах, превышающих её количество на складе. Можно указать СУБД, что следует проверять каждую новую строку, добавляемую в таблицу ДОГОВОРА, и убеждаться, что значение в столбце Количество не нарушает установленное деловое правило.
6. Непротиворечивость. Многие реальные деловые операции вызывают в базе данных несколько изменений одновременно. Например, операция “увольнение сотрудника и передача всех закрепленных за ним объектов другим сотрудникам этого же отделения” может включать в себя удаление строки из таблицы STAFF с предварительным изменением содержимого соответствующих столбцов SNO таблицы Property_for_Rent. Одна инструкция DELETE и инструкция UPDATE – все они должны быть выполнены для того, чтобы база данных осталась в правильном, непротиворечивом состоянии. Можно указать СУБД, что следует обеспечивать непротиворечивость изменяемых данных.