Триггер для логов
Добавлено: 10 авг 2005, 11:34
Хочу чтобы триггер писал логи по всем полям в таблицу LOG. Заминка в
получение нового значения поля: "new.:FIEL_NAME" Есть способ динамически подставлять имя поля к new.переменная ?
получение нового значения поля: "new.:FIEL_NAME" Есть способ динамически подставлять имя поля к new.переменная ?
Код: Выделить всё
AS
DECLARE VARIABLE FIELD_NAME VARCHAR(31);
begin
for select rdb$field_Name from RDB$RELATION_FIELDS where rdb$relation_name='PAY'
into FIELD_NAME
do
begin
insert into logs(UID,
TABLE_NAME,
FIELD_NAME,
OLD_VALUE,
NEW_VALUE,
ACTION_DATE,
VALUE_ID)
Values(new.log_uid,
'PAY',
:FIELD_NAME,
old.:FIELD_NAME, /*вот тут и заминка*/
new.:FIELD_NAME,/*вот тут и заминка*/
"NOW",
new.cars_id );
end
end