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


У меня есть следующая проблема:

Пытаюсь написать триггер:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
CREATE OR REPLACE FUNCTION test_func() RETURNS trigger LANGUAGE plpgsql AS $body$
DECLARE
    ...;
BEGIN
    ...
    NEW.test_field := 'testy';
    insert into test_tmp ( ttt )
     values (NEW.test_field)
    RETURN NEW;
END;
$body$;

CREATE TRIGGER test_insert BEFORE INSERT ON test_table
    FOR EACH ROW EXECUTE PROCEDURE test_func();

В общем я хотел бы, чтоб это работало так - вставляется запись в таблицу и перед вставкой в записи апдейтится одно поле. А у меня работает так - вставляется запись, вызывается триггер, в NEW это поле апдейтится (я специально вставил инсёрт из NEW в другую таблицу, вставляется то, что нужно), а вот по завершении работы проверяю в базе - нужное поле в таблице не проапдейтилось. А осталось прежним, то есть таким, каким я его вставлял изначально... Честно говоря я в тупике... с трудом понимаю даже где искать проблему... Помогите пжлст. Сталкивался ли кто-нить с чем-нить подобным?


Заранее спасибо.
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34857556
v0v4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
тригер before или after? Если after, то конечно не будет работать.
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34857570
v0v4ik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сорри, не доглядел...
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34857639
Фотография pamir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У вас точно все создалось?
в строке
Код: plaintext
1.
insert into test_tmp ( ttt )
     values (NEW.test_field)
Не хватает точки с запятой.
После добавления все создалось и отработало верно.

Либо то, что Вы заменили многоточиями на самом деле критично и влияет на результат.
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34858019
PFOcChKen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сорри, с точкой с запятой ошибся, когда выкладывал на форум. В базе всё создалось. Просто быстро набирал и пропустил. В реальном триггере ; есть. В том то ж и проблема, что вроде явных ошибок нет, а чего-то не сохраняет с новым значением...:(
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34858069
4321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PFOcChKenСорри, с точкой с запятой ошибся, когда выкладывал на форум. В базе всё создалось. Просто быстро набирал и пропустил. В реальном триггере ; есть. В том то ж и проблема, что вроде явных ошибок нет, а чего-то не сохраняет с новым значением...:(таки не надо "набирать", а копипастить, а то вероятнее всего в базе у вас триггер AFTER а набрали вы таки правильно - BEFORE и сиди тут, гадай.

кстати, а другие триггера на табличке не висят?
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34858188
PFOcChKen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Копипастить тяжело. У меня pgsql запущен под Линухами на виртуальной машине. Собственно вся работа там и происходит... мдя... но вобщем дело то не в этом. Я уже с этим триггером пятый час на момент выкладывания долбался... и проверил всё 30 раз.:( Других триггеров нету...:(
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34862450
PFOcChKen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем тема закрыта. Спасибо всем за помощь. Решил в итоге делать на уровне клиента.
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34863051
Фотография pamir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PFOcChKenВ общем тема закрыта. Спасибо всем за помощь. Решил в итоге делать на уровне клиента.Жуть какая.
...
Рейтинг: 0 / 0
Проблема со вставкой в триггере
    #34863644
Dan Black
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PFOcChKenВ общем тема закрыта. Спасибо всем за помощь. Решил в итоге делать на уровне клиента.
а если на уровне клиента будет подобная загвоздка?
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Проблема со вставкой в триггере
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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