Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / изучение триггера / 4 сообщений из 4, страница 1 из 1
18.03.2017, 17:36
    #39422229
Evgen8739
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изучение триггера
добрый день.
Я только начинаю изучать триггеры,в связи с этим появился вопрос.
подскажите пожалуйста,как обратиться к значению поля изменяемой,удаляемой или вставляемой таблицы?
Хочу что бы два значения из t1 скопировались в log_t1 при совершении одной из операции.
Мне для этого нужно объявлять временные переменные как в ms mql?
есть таблица t1 c полями с1,с2,c3,c4.
Создаю вторую таблицу для логирования событий с полями с1,с2,дата и что произошло.
Создаю триггер:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
CREATE OR REPLACE TRIGGER tr_rest_1
	AFTER INSERT OR UPDATE OR DELETE ON t1
	FOR EACH ROW
	
DECLARE

TIP VARCHAR2(10);

BEGIN	
	IF    INSERTING THEN
		  TIP := 'INSERT';
	ELSIF UPDATING ('c3') or UPDATING ('c4')

THEN
		  TIP := 'UPDATE';
	ELSIF DELETING THEN
		  TIP := 'DELETE';
	END IF;
	
	INSERT INTO log_t1 ([c1],[c2], [data], [type])
		VALUES (t1.c1,t1.c2, SYSDATE, TIP);
	
END tr_rest_1;
...
Рейтинг: 0 / 0
18.03.2017, 17:48
    #39422238
stax..
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изучение триггера
Evgen8739,

:old.с1,:new.c1 ...

https://docs.oracle.com/cd/B10501_01/appdev.920/a96590/adg13trg.htm

ps
c помощью referencing_clause можно поменять old/new на другой любимый префикс

.....
stax
...
Рейтинг: 0 / 0
18.03.2017, 18:03
    #39422243
Evgen8739
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изучение триггера
Спасибо огромное)))Теперь понял)))Буду теперь дальше экспериментировать.
...
Рейтинг: 0 / 0
18.03.2017, 21:16
    #39422292
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изучение триггера
Evgen8739дальше экспериментироватьТы легко сможешь обогнать тыщу мартышек, если вместо этого
RTFM DML Triggers: Correlation Names and Pseudorecords (FAQ)
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / изучение триггера / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]