DATABASE Database (база данных). База данных - это зарезервированный объем памяти для одного или более устройств хранения, которые используются для хранения данных и определений объектов БД, например таблиц и индексов. Для создания БД у пользователя должна быть привилегия DBA.
Список DATABASE в верхней части закладки показывает все БД сервера. Кнопки New, Rename и Delete служат соответственно для создания, переименования и удаления БД. При нажатии кнопки New возникает диалог New DATABASE, в котором следует задать имя БД. Свойства БД задаются в диалоге ORACLE Physical Object Editor.
Список LOGFILE показывает имена всех log-файлов (журналов регистрации) в БД. Справа от списка находятся поля для ввода параметров log-файлов:
MAXLOGFILES - максимальное число log-файлов, которые можно создать для БД (допустимый диапазон значений 2-56).
MAXLOGHIST - объем памяти, который должен быть зарезервирован в управляющем файле для имен групп архивных log-файлов транзакций (поддерживается Oracle? и более поздними версиями).
MAXLOGMEMS - максимальное число членов в каждой log-группе (поддерживается Oracle? и более поздними версиями).
Список DATAFILE показывает имена всех файлов данных в БД. Поле MAXDATAFILES позволяет задать максимальное количество файлов в БД.
Поле выбора CONTROL FILE REUSE служит для задания статуса повторного использования управляющего файла. Включенная опция позволяет Oracle переписать информацию в управляющих файлах, определенных в параметре INIT.ORA CONTROL_FILES. Выключенная опция запрещает Oracle повторно использовать управляющие файлы.
ARCHIVE LOG - состояние автоматического архивирования. Разрешает автоматическое архивирование информации log, используемой при восстановлении.
EXCLUSIVE - статус совместного использования данных. Выключенная опция разрешает одновременный доступ нескольких пользователей.
MAXINSTANCES - максимальное число экземпляров, для которых одновременно может быть установлена БД (допустимый диапазон значений 1-255).
CHARACTER SET - набор символов, используемый БД. Все данные в колонках типов CHAR, VARCHAR2, LONG хранятся в заданном наборе символов. После того как БД создана, набор символов не может быть изменен.
Кнопка DB Sync позволяет сгенерировать объекты физической памяти в системном каталоге СУБД сразу после их создания в диалоге Physical Object Editor.
2.3.7. Триггеры и хранимые процедуры
Триггеры и хранимые процедуры - это именованные блоки кода SQL, которые заранее откомпилированы и хранятся на сервере для того, чтобы быстро производить выполнение запросов, валидацию данных и выполнять другие часто вызываемые функции.
Хранение и выполнение кода на сервере позволяет создавать код только один раз, а не в каждом приложении, работающем с БД, что экономит время при написании и сопровождении программ. При этом гарантируется, что целостность данных и бизнес-правила поддерживаются независимо от того, какое именно клиентское приложение обращается к данным. Триггеры и хранимые процедуры не требуется пересылать по сети из клиентского приложения, что значительно снижает сетевой трафик.
Хранимой процедурой называется именованный набор предварительно откомпилированных команд SQL, который может вызываться из клиентского приложения или из другой хранимой процедуры.
Триггером называется процедура, которая выполняется автоматически как реакция на событие. Таким событием может быть вставка, изменение или удаление строки в существующей таблице. Триггер сообщает СУБД, какие действия нужно выполнить при выполнении команд SQL INSERT, UPDATE или DELETE для обеспечения дополнительной функциональности, выполняемой на сервере.
Триггер ссылочной целостности - особый вид триггера, используемый для поддержания целостности между двумя таблицами, которые связаны между собой. Если строка в одной таблице вставляется, изменяется или удаляется, то триггер ссылочной целостности (RI-триггер) сообщает СУБД, что нужно делать с теми строками в других таблицах, у которых значение внешнего ключа совпадает со значением первичного ключа вставленной (измененной, удаленной) строки. По умолчанию ERwin генерирует триггеры, дублирующие декларативную ссылочную целостность (см. 2.2.3). Например, если удаляется клиент из таблицы CUSTOMER (см. рис. 2.73), то в зависимости от установленных правил ссылочной целостности могут быть сгенерированы RI-триггеры, которые будут воздействовать на соответствующие удаляемому клиенту заказы из таблицы ORDER. Команда DELETE может быть обработана следующими способами:
Проверяется наличие заказов у удаляемого клиента и, если заказы есть, запрещается удаление клиента из таблицы