Создание удаленной базы данных InterBase

Автор работы: Пользователь скрыл имя, 28 Апреля 2012 в 14:12, лабораторная работа

Описание

Можно задать также одно или несколько ограничений для таблицы. Ограничения, указанные в описании после определения столбца, относятся к столбцу. Эти ограничения не применяются к таблице целиком, а распространяются только на столбцы таблицы. В стандарте SQL-92 (для любого уровня соответствия) ограничения должны иметь имена, хотя эти имена (внутренние) могут быть сгенерированы исполнительным механизмом СУБД, а не определены явно создателем таблицы. Ниже дан обзор типов ограничений. Подробная информация приводится в главе III в разделе "Сравнения". Возможны следующие ограничения:

Работа состоит из  1 файл

Poliklinika.docx

— 1.02 Мб (Скачать документ)

При выборке значения генератора запросом вида select gen_id(genname, x) from ... следует  учитывать буферизацию выборки  на клиенте. Т.е. в многопользовательской  среде при выполнении двух таких  запросов значения генератора будут  увеличиваться "пачками", а не на величину x для каждой выбираемой записи.

 

16. Триггеры

 

Триггер определяет операцию, которая должна выполняться при наступлении некоторого события в базе данных.  Триггеры срабатывают при выполнении с таблицей команды SQL INSERT, UPDATE или DELETE. 
В  PostgreSQL триггеры создаются на основе существующих функции, т.е. сначала  командой  CREATE FUNCTIONопределяется  триггерная функция, затем на ее основе  командой CREATE TRIGGER  определяется собственнотриггер.

Синтаксис определения триггера

 
CREATE TRIGGER триггер 
BEFORE | AFTER } { событие [ OR событие ] } ON таблица 
FOR EACH { ROW |  STATEMENT }  
EXECUTE PROCEDURE функция ( аргументы )

Ниже приводятся краткие  описания компонентов этого определения.

•       CREATE TRIGGER триггер. В аргументе триггер указывается произвольное имя создаваемого триггера. Имя может совпадать с именем триггера, уже существующего в базе данных   при условии, что этот триггер установлен для другой таблицы. Кроме того, по аналогии с большинством других несистемных объектов баз данных, имя триггера (в сочетании с таблицей, для которой он устанавливается) должно быть уникальным лишь в контексте базы данных, в которой он создается 
•       { BEFORE | AFTER }. Ключевое слово BEFORE означает, что функция должна выполняться  перед попыткой выполнения операции, включая все встроенные проверки ограничений данных, реализуемые при выполнении команд INSERT и DELETE. Ключевое слово AFTER означает, что функция вызывается после завершения операции, приводящей в действие триггер. 
•       { событие [ OR событие ... ] }. События SQL, поддерживаемые в PostgreSQL: INSERT, UPDATE или DELETE.При перечислении нескольких событий в качестве разделителя используется ключевое слово OR. 
•       ON таблица. Имя таблицы, модификация которой заданным событием приводит к срабатыванию триггера. 
•       FOR EACH { ROW | STATEMENT }. Ключевое слово, следующее за конструкцией FOR EACH и определяющее количество вызовов функции при наступлении указанного события. Ключевое слово ROW означает, что функция вызывается для каждой  модифицируемой записи. Если функция должна вызываться всего один раз для всей команды, используется ключевое слово STATEMENT. 
•       EXECUTE PROCEDURE функция ( аргументы ). Имя вызываемой функции с аргументами. На  практике аргументы  при вызове триггерных функций не используются.

 

 

 

 

Создание доменов

 

Слздание ограничения  целостности и ограничения сущности

 

 

 

(ограничение сущности)картинка  выше

 

Создание представлений

 

Создание генераторов:

 

Создать триггеры для реализации ограничений ссылочной целостности  и для занесения в ключевые столбцы уникальных значений.

 

 

Создать триггер  для изменения значений таблицы

Создание хранимых процедур

 

 

 


Информация о работе Создание удаленной базы данных InterBase