powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / универсальный триггер?
5 сообщений из 5, страница 1 из 1
универсальный триггер?
    #35444746
Op3R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Даров всем, меня интересует одна вещица. Есть таблицы, в колличестве больше одной, разные по структуре. Собсно вопрос: существует ли возможность повесить универсальный, одновременно на несколько таблиц, триггер, и чтобы таблицы заполнялись правильно?

Например:

create table test1(

id serial primary key,
val integer,

mtime timestamp not null
);

create table test1_old(

id integer,
val integer,

mtime timestamp not null,
deleted timestamp

);

ну и триггер какойнить, на одну из таблиц:

create function update_trigger_fn()
returns trigger
as
$$
begin
if new.val = old.val
then
return null;
end if;
new.mtime = now();
insert into test1_old(id, val, mtime, deleted) values (old.id, old.val, old.mtime, NULL);
return new;
end;
$$
language 'plpgsql';

create trigger update_trigger
before update
on test1 for each row
execute procedure update_trigger_fn();

Можно ли как-то обощить этот триггер на несколько пар (оригинал, архив) таблиц?
Если да, то как заменить строку типа "insert into test1_old(id, val, mtime, deleted) values (old.id, old.val, old.mtime, NULL);" на что-то более универсальное?
...
Рейтинг: 0 / 0
универсальный триггер?
    #35445480
Фотография Степан H.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
возможность существует

TG_RELNAME - Data type name; the name of the table that caused the trigger invocation.
...
Рейтинг: 0 / 0
универсальный триггер?
    #35446003
Serik Akhmetov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такое можно написать на plperl.
...
Рейтинг: 0 / 0
универсальный триггер?
    #35448405
Op3R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Serik AkhmetovТакое можно написать на plperl.
а поподробней можно?
...
Рейтинг: 0 / 0
универсальный триггер?
    #35448877
Serik Akhmetov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / универсальный триггер?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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