Ограничения столбцов
Ограничения столбцов
Пример ограничения столбца показан в следующем операторе языка определения данных DDL:
| CREATE TABLE CLIENT ( | ||
| ClientName | CHARACTER (30), | NOT NULL,, |
| Address1 | CHARACTER (30), | |
| Address2 | CHARACTER (30), | |
| City | CHARACTER (25), | |
| State | CHARACTER (2), | |
| PostalCode | CHARACTER (10), | |
| Phone | CHARACTER (13), | |
| Fax | CHARACTER (13), | |
| ContactPerson | CHARACTER (30) ) ; | |
| ) ; |
В этом операторе ограничение NOT NULL, примененное к столбцу ClientName, указывает на то, что этот столбец не может принимать неопределенное значение. Другое ограничение, которое можно применять к столбцу, — это UNIQUE. Оно указывает на то, что каждое значение, находящееся в столбце, должно быть уникальным. Ограничение CHECK (проверка) особенно полезно тем, что может принимать в качестве аргумента любое корректное выражение. Рассмотрим следующий пример:
| CREATE TABLE TESTS ( | ||
| TestName | CHARACTER (30) | NOT NULL, |
| StandardCharge | NUMBER (6,2) | |
| CHECK (StandardCharge >= 0.0 | ||
| AND StandardCharge <= 200.0) | ||
| ); |
В VetLab стандартная плата за проведение анализа всегда должна быть больше или равна нулю. Кроме того, ни один из стандартных анализов не стоит больше 200 долларов. Благодаря ограничению CHECK в столбец StandardCharge не попадет никакое значение, находящееся вне диапазона 0 <= STANDARD_CHARGE <= 200. А вот еще способ установить то же самое ограничение:
CHECK (StandardCharge BETWEEN 0.0 AND 2 00.0)