русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Проверка ограничения


Дата добавления: 2013-12-23; просмотров: 988; Нарушение авторских прав


Проверка ограничения

Каскадное удаление

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

Опция Действие
NO ACTION Определяет, что если будет сделана попытка удалить строку, на которую есть ссылки из других таблиц, то возникнет ошибка, и операция удаления будет отменена.
CASCADE Определяет, что если будет сделана попытка удалить строку, на которую есть ссылки из других таблиц, то все зависимые строки этих таблиц будут также удалены.
SET NULL Определяет, что если будет сделана попытка удалить строку, на которую есть ссылки из других таблиц, то все значения внешних ключей в зависимых строках этих таблиц будут установлены в null. Чтобы выполнить это ограничение, все столбцы внешнего ключа целевой таблицы должны допускать null значения.
SET DEFAULT Определяет, что если будет сделана попытка удалить строку, на которую есть ссылки из других таблиц, то все значения внешних ключей в зависимых строках этих таблиц будут установлены в их значение по умолчанию DEFAULT. Все столбцы внешнего ключа целевой таблицы должны иметь определение DEFAULT для этого ограничения. Если столбец допускает null значения, и нет никакого явного набора значений по умолчанию, то null значение неявно становится значением по умолчанию для этого столбца. Любые определенные (не null) значения, которые установлены из-за ON DELETE SET DEFAULT, должны иметь соответствующие значения в первичной таблице, чтобы поддержать ограничения внешнего ключа.

 

Когда Вы создаете ограничения, Вы должны определить для них значащие имена; если Вы не определяете имена для Ваших ограничений, SQL генерирует сложные имена. Имена должны быть уникальными для данного владельца объекта БД, а также следовать правилам для идентификаторов SQL Server.



 

Когда Вы создаете или изменяете ограничения, учитывайте следующие факты:

■ Вы можете создать, изменить, или удалить ограничения, без необходимости удаления или пересоздания таблицы.

■ Вы должны встроить логику проверки ошибок в Ваши приложения и транзакции, чтобы проверить было ли нарушено ограничение.

■ При добавлении новых ограничений FOREIGN KEY и CHECK к существующей непустой таблице Вы должны явно определить соответствующую опцию, если не хотите, чтобы SQL Server применял эти ограничения к существующим данным.

Совет.Для получения информации об ограничениях, выполняйте системные хранимые процедурыsp_helpconstraintили sp_help, или представления системного каталога, такие как check_constraints, referential_constraints, и table_constraints. Кроме того, следующие системные таблицы хранят определения ограничений: syscomments, sysreferences, и sysconstraints.

 



<== предыдущая лекция | следующая лекция ==>
Каскадирование обновлений | Как отключить ограничения


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.