powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / ERROR: NEW used in query that is not in a rule
2 сообщений из 2, страница 1 из 1
ERROR: NEW used in query that is not in a rule
    #33511362
robot648
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть триггер

CREATE OR REPLACE FUNCTION filename_trigger_func() RETURNS trigger AS '
DECLARE
return_new integer := 1;
BEGIN
if exists(select * from filename where name=NEW.name) then
raise NOTICE \'row ignored \';
return_new := 0;
end if;


PERFORM perl_trigger_add_file(NEW);



if return_new = 1 THEN
return NEW;
ELSE
return NULL;
END IF;

END;
' LANGUAGE plpgsql;


Он вызывает перловую функцию perl_trigger_add_file. При срабатывании триггера получаю сабжевую ошибку. Товарищи специалисты, подскажите, что я не правильно делаю и как правильно вызввать перловую функцию из plpgsqlного триггера (постгрес 7.4, нет возможности сделать триггер непосредственно на перле).
...
Рейтинг: 0 / 0
ERROR: NEW used in query that is not in a rule
    #33512687
4321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй прокладку
http://195.128.121.254/forum/actualthread.aspx?bid=7&tid=253810&hl=new но вряд ли (в 7.3.4 трюк не работаит, в 8.0.1 - намана).
вообще-то тема интересная. Как запихать new куды-нть, в чем его можно б было передавать. или как перебрать все его поля, не зная наперед структуры в самом plpg (я вот чичас рожаю с пяток однотипных триггерных ф-й копипейстом+массовой заменой, а изячней было б наваять одну, но разборчивую).
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / ERROR: NEW used in query that is not in a rule
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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