Взаимодействие ограничений

Взаимодействие ограничений

Комбинируя формальное ссылочное ограничение с другими ограничениями целостности (см. главу 16), можно реализовать большинство (если не все) бизнес-правил с высокой степенью точности. Например, ограничение столбца NOT NULL будет корректировать действия и предотвратит появление зависших строк, если это необходимо, тогда как столбец внешнего ключа, который допускает пустые значения, может быть использован для реализации специальных структур данных, таких как деревья (см. разд. "Ссылающиеся на себя отношения").

! ! !

СОВЕТ. Если вам нужно сделать столбец вашего внешнего ключа NOT NULL, создайте "фиктивную" строку родительской таблицы с неиспользуемым значением ключа, например, 0 или -1. Используйте действие SET DEFAULT для эмуляции поведения SET NULL, чтобы сделать значением по умолчанию фиктивное значение ключа.

. ! .

Ссылочные ограничения могут быть назначены ограничениям CHECK. В некоторых случаях ограничение CHECK, наследуемое от домена, может также пересекаться или вступать в конфликт со ссылочным ограничением. Стоит потратить несколько минут для описания на бумаге эффектов каждого ограничения для идентификации и уменьшения потенциальных проблем.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

10.3.3. Применение ограничений использования ресурсов

Из книги автора

10.3.3. Применение ограничений использования ресурсов Чтобы помочь в предотвращении неконтролируемого снижения производительности процессами, Unix отслеживает многие ресурсы, которые может использовать процесс, и позволяет системному администратору и самим


Другие варианты обхода ограничений

Из книги автора

Другие варианты обхода ограничений В этом разделе я подскажу вам другие варианты обхода ограничений файлообменных сервисов.Первый из них заключается в использовании ресурса filepost.ru. Бесплатно скачивать файлы не получится, но вот сэкономить на покупке премиум-аккаунта


Настройка ограничений доступа к сайтам

Из книги автора

Настройка ограничений доступа к сайтам Браузер Internet Explorer позволяет ограничить доступ к некоторым сайтам. Для этого предназначена вкладка Содержание окна Свойства обозревателя (рис. 8.1).Вкладка содержит три области, с помощью которых можно задать настройки безопасности


3.6.1. Определение ограничений

Из книги автора

3.6.1. Определение ограничений Для определения (задания) ограничений используется команда edquota. Ограничение дискового пространства пользователя производится командой edquota с параметром –u (см. рис. 3.7), а определение квот для группы — с параметром –g. После выполнения этой


Настройки ограничений

Из книги автора

Настройки ограничений Отдельно стоит сказать о возможностях работы с ограничениями, которые можно настроить для закрытия доступа к страницам, содержащим насилие или другие запретные темы. Доступ к данным настройкам можно получить после нажатия кнопки Настройка на


Виды ограничений в базе данных

Из книги автора

Виды ограничений в базе данных Существуют следующие виды ограничений в базе данных InterBase:* первичный ключ - PRIMARY KEY;* уникальный ключ - UNIQUE KEY;* внешний ключ - FOREIGN KEY- может включать автоматические триггеры ON UPDATE и ON DELETE;* проверки - CHECK.В предыдущих главах уже упоминались


Создание ограничений

Из книги автора

Создание ограничений Давайте рассмотрим создание ограничений подробнее. Первой в описании общего синтаксиса ограничений идет опция [CONSTRAINT constraint]. Как видите, эта опция взята в квадратные скобки и, значит, необязательна.С помощью этой опции можно задавать имя


Удаление ограничений

Из книги автора

Удаление ограничений Часто приходится удапять различные ограничения по самым разным причинам. Чтобы удалить ограничение, необходимо воспользоваться предложением ALTER TABLE следующего вида: ALTER TABLE cablename DROP CONSTRAINT constraintname где constraintname - имя ограничения, которое следует


Имена индексов ограничений

Из книги автора

Имена индексов ограничений Использование явных планов в Yaffil в триггерах и процедурах существенно упрощается благодаря возможности именования индексов, автоматически создаваемых сервером для ограничений первичных, внешних ключей и ограничений уникальности. В версиях


 Программирование  ограничений

Из книги автора

 Программирование  ограничений Блендер имеет  много ограничений, которые Вы можете применить к объекту. Некоторые из них похожи на управляющие объекты (drivers), в том смысле, что они не ограничивают движение объекта, но могут копировать некоторые параметры, такие как


Добавление простых ограничений

Из книги автора

Добавление простых ограничений Ограничения (Constraints) могут быть применены к объектам и костям. В обоих случаях ограничение добавляется вызовом метода append() атрибута constraints. Наш следующий пример покажет, как мы можем ограничить движение стрелок часов из rigged clock (Глава 3,


Добавление ограничений в таблицу

Из книги автора

Добавление ограничений в таблицу В процессе создания таблицы можно добавить ограничения (constraints). Они аналогичны индексу, но используются для обозначения уникального, первичного или внешнего ключа.Ограничение создается с помощью предложения SQL CONSTRAINT, которое принимает


Отсутствие поддержки ограничений при использовании операций

Из книги автора

Отсутствие поддержки ограничений при использовании операций При создании обобщенных методов для вас может оказаться сюрпризом появление ошибок компилятора, когда с параметрами типа используются операции C# (+, -, *, == и т.д.). Например, я уверен, вы сочли бы полезными классы


3.3. Применение ограничений при работе с перекрестными видами

Из книги автора

3.3. Применение ограничений при работе с перекрестными видами Постановка задачи Требуется выровнять компонент пользовательского интерфейса относительно другого компонента пользовательского интерфейса, притом что родительские элементы у этих компонентов


Удаление ограничений

Из книги автора

Удаление ограничений Необходимо выполнять удаление ограничений в правильной последовательности, если ограничения PRIMARY KEY и CHECK имеют зависимости.! ! !СОВЕТ. Для поиска имен ограничений может оказаться полезным выполнение четырех системных просмотров, определенных в


Проверка ограничений на имена

Из книги автора

Проверка ограничений на имена Для этой проверки используется четвертая группа переменных состояния. Проверяется, принадлежит ли имя субъекта сертификата одному из разрешенных поддеревьев иерархии отличительных имен X.500 и не принадлежит ли одному из запрещенных