Обеспечение целостности данных

Содержание

Слайд 2

Хранимые процедуры

Хранимые процедуры пишутся на специальном встроенном языке программирования, они могут включать

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

Слайд 3

Хранимые процедуры являются объектами БД.
Каждая хранимая процедура компилируется при первом выполнении
В

Хранимые процедуры являются объектами БД. Каждая хранимая процедура компилируется при первом выполнении
процессе компиляции строится опти-мальный план выполнения процедуры.
Описание процедуры совместно с пла-ном ее выполнения хранится в системных таблицах БД.

Слайд 4

Синтаксис

CREATE [ OR REPLACE]
( “аргумент” IN | OUT | IN

Синтаксис CREATE [ OR REPLACE] ( “аргумент” IN | OUT | IN
OUT “Тип данных” [,..])
IS | AS
“Тело процедуры PL/SQL”

Слайд 5

Функция получения ip-адреса

create or replace function sys.client_ip_address return varchar2 is begin return dbms_standard.client_ip_address; end;

Функция получения ip-адреса create or replace function sys.client_ip_address return varchar2 is begin return dbms_standard.client_ip_address; end;

Слайд 6

Пример процедуры

create or replace procedure sys.subptxt(name varchar2, subname varchar2, usr varchar2,
txt in

Пример процедуры create or replace procedure sys.subptxt(name varchar2, subname varchar2, usr varchar2,
out varchar2) is
begin
subptxt2(name, subname, usr, null, null, txt);
end;

Слайд 7

Триггеры

Фактически триггер — это специальный вид хранимой процедуры, которую SQL Server вызывает

Триггеры Фактически триггер — это специальный вид хранимой процедуры, которую SQL Server
при выполнении операций модификации соответствующих таблиц.
Триггер автоматически активизируется при выполнении операции, с которой он связан.
Триггеры связываются с одной или несколькими операциями модификации над одной таблицей.

Слайд 8

В СУБД Oracle определены два типа триггеров:
триггеры, которые могут быть запущены

В СУБД Oracle определены два типа триггеров: триггеры, которые могут быть запущены
перед реализацией операции модификации, они называются BEFORE-триггерами,
и триггеры, которые активизируются после выполнения соответствующей модификации, аналогично триггерам MS SQL Server, — они называются AFTER-триггерами.

Слайд 9

Синтаксис (стандарт)

CREATE TRIGGER <имя_триггера>
ON <имя_таблицы>
FOR { [INSERT] [,UPDATE] [, DELETE] }
AS
SQL-операторы (Тело

Синтаксис (стандарт) CREATE TRIGGER ON FOR { [INSERT] [,UPDATE] [, DELETE] } AS SQL-операторы (Тело триггера)
триггера)

Слайд 10

В Oracle

CREATE [ OR REPLACE] TRIGGER <имя_триггера> BEFORE | AFTER
ON <имя_таблицы>
FOR

В Oracle CREATE [ OR REPLACE] TRIGGER BEFORE | AFTER ON FOR
{ [INSERT] [,UPDATE] [, DELETE] }
FOR EACH ROW
WHEN (условие)
AS
SQL-операторы (Тело триггера)

Слайд 11

Пример

create or replace trigger add_author AFTER INSERT OR UPDATE OF C_AUTHOR
ON T_CLAUSES FOR

Пример create or replace trigger add_author AFTER INSERT OR UPDATE OF C_AUTHOR
EACH ROW
DECLARE id_cl int; aut varchar2(500); res int;
BEGIN id_cl := :new.N_ID_CL; aut := :new.C_AUTHOR; res := ANALIZ_AUT(id_cl, aut); END;

Слайд 12

Ограничения

Нельзя использовать в теле триггера операции создания объектов БД (новой БД, новой

Ограничения Нельзя использовать в теле триггера операции создания объектов БД (новой БД,
таблицы, нового индекса, новой хранимой процедуры, нового триггера, новых индексов, новых представлений),
Нельзя использовать в триггере команду удаления объектов DROP для всех типов базовых объектов БД.
Нельзя использовать в теле триггера команды изменения базовых объектов ALTER TABLE, ALTER DATABASE.
Нельзя изменять права доступа к объектам БД, то есть выполнять команду GRAND или REVOKE.
Нельзя создать триггер для представления (VIEW).
В отличие от хранимых процедур, триггер не может возвращать никаких значений, он запускается автоматически сервером и не может связаться самостоятельно ни с одним клиентом.

Слайд 13

Пример приложения

Программа отправляет и отслеживает SMS-сообщения (через e-mail шлюз) с сайта оператора

Пример приложения Программа отправляет и отслеживает SMS-сообщения (через e-mail шлюз) с сайта оператора сотовой связи.
сотовой связи.

Слайд 14

Информационные потоки

ТЕКСТ СООБЩЕНИЯ набирает пользователь в форме.
Сообщение проверяется на наличие «ключевых» слов.
При

Информационные потоки ТЕКСТ СООБЩЕНИЯ набирает пользователь в форме. Сообщение проверяется на наличие
наличии этих слов пользователь отправлявший сообщение, попадает в «черный список»
Периодически всем пользователям «черного списка» рассылается автоматически сообщение-предупреждение.
Имя файла: Обеспечение-целостности-данных.pptx
Количество просмотров: 268
Количество скачиваний: 3