powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Триггеры. Предупреждение: нет незавершенной транзакции COMMIT
3 сообщений из 3, страница 1 из 1
Триггеры. Предупреждение: нет незавершенной транзакции COMMIT
    #40058888
Oda412
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Создаю таблицы t1 и t2 - с одинаковыми полями. Хочу создать триггер, который срабатывает при добавлении новой записи в таблицу t2 и вводит в таблицу t1 необходимые значения.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE TABLE t1(f1 INT,f2 INT,f3 INT);
CREATE TABLE t2(f1 INT,f2 INT,f3 INT);

CREATE OR REPLACE TRIGGER tr
AFTER INSERT ON t2
FOR EACH ROW
BEGIN
  INSERT INTO t1(f1,f2,f3) VALUES(5,5,5);
END;



При выполнении данного кода появляется ошибка:
"ПРЕДУПРЕЖДЕНИЕ: нет незавершённой транзакции
COMMIT"

Помогите, пожалуйста
...
Рейтинг: 0 / 0
Триггеры. Предупреждение: нет незавершенной транзакции COMMIT
    #40058895
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oda412,

и где вы такой синтаксис создания триггера нашли в postgresql?
https://www.postgresql.org/docs/current/sql-createtrigger.html

И почему не видите текст про синтаксическую ошибку?
...
Рейтинг: 0 / 0
Триггеры. Предупреждение: нет незавершенной транзакции COMMIT
    #40058915
Oda412
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Melkij,
Спасибо за правильную ссылку. Сработало в таком виде:

1) Создала триггерную функцию:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CREATE OR REPLACE FUNCTION p()
RETURNS TRIGGER
LANGUAGE plpgsql
AS
$$
BEGIN
INSERT INTO t1(f1,f2,f3) VALUES(7,7,7);
RETURN NEW;
END;
$$



2) Создала триггер:
Код: plsql
1.
2.
3.
4.
CREATE TRIGGER tr
AFTER INSERT ON t2
FOR EACH ROW
EXECUTE PROCEDURE p();



3) Ввела новую запись в таблицу t2:
Код: plsql
1.
INSERT INTO t2(f1,f2,f3) VALUES (11,11,11);



В t1 добавилась нужная запись.

Благодарю вас!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Триггеры. Предупреждение: нет незавершенной транзакции COMMIT
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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