Article View: pl.comp.bazy-danych
Article #195682PostgreSQL - trigger pomija instrukcje
From: Marek S
Date: Sun, 03 Nov 2019 22:18
Date: Sun, 03 Nov 2019 22:18
45 lines
2531 bytes
2531 bytes
Witam Was,
Mam kłopot ze zrozumieniem, co się dzieje. Otóż stworzyłem trigger:
CREATE OR REPLACE FUNCTION admin.category_delete()
RETURNS TRIGGER AS
$$
BEGIN
RAISE NOTICE 'Weight %, parent ID %', OLD.weight,
OLD.parent_id;
UPDATE admin.category SET weight = weight - 1 WHERE
parent_id = OLD.parent_id AND weight > OLD.weight;
RAISE NOTICE 'After update';
RETURN OLD;
END;
$$
LANGUAGE plpgsql;
Wywołuję go jako:
CREATE TRIGGER category_delete AFTER DELETE ON admin.category FOR EACH
ROW EXECUTE PROCEDURE admin.category_delete()
No i update z niego nie jest realizowany. Zachowuje się tak jakby był
zakomentowany. W logach bazy są linie to sugerujące:
2019-11-03 23:06:01.946 CET [13200] DZIENNIK: wyraĹĽenie: BEGIN
2019-11-03 23:06:01.947 CET [13200] DZIENNIK: wykonanie <unnamed>:
DELETE FROM admin.category WHERE category_id = $1
2019-11-03 23:06:01.947 CET [13200] SZCZEGĂ“ĹY: parametry: $1 = '1'
2019-11-03 23:06:01.950 CET [13200] UWAGA: Weight 1, parent ID <NULL>
2019-11-03 23:06:01.950 CET [13200] KONTEKST: funkcja PL/pgSQL
admin.category_delete(), wiersz 3 w RAISE
2019-11-03 23:06:01.950 CET [13200] UWAGA: After update
2019-11-03 23:06:01.950 CET [13200] KONTEKST: funkcja PL/pgSQL
admin.category_delete(), wiersz 5 w RAISE
2019-11-03 23:06:01.951 CET [13200] DZIENNIK: wyraĹĽenie: COMMIT
Powstają informacyjne exceptions przed wykonaniem aktualizacji i po.
Natomiast nie ma śladu po tym, co jest między komunikatami. O co chodzi?
--
Pozdrawiam,
Marek
Technical Details
Message-ID:
<qpnjmv$f6a$1@news.icm.edu.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!.POSTED!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!.POSTED!not-for-mail From: Marek S <precz@spamowi.com> Newsgroups: pl.comp.bazy-danych Subject: PostgreSQL - trigger pomija instrukcje Date: Sun, 3 Nov 2019 23:18:05 +0100 Organization: ICM, Uniwersytet Warszawski Lines: 45 Message-ID: <qpnjmv$f6a$1@news.icm.edu.pl> NNTP-Posting-Host: 89-77-183-104.dynamic.chello.pl Mime-Version: 1.0 X-Trace: news.icm.edu.pl 1572819487 15562 89.77.183.104 (3 Nov 2019 22:18:07 GMT) X-Complaints-To: usenet@news.icm.edu.pl NNTP-Posting-Date: Sun, 3 Nov 2019 22:18:07 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.2.0 X-Mozilla-News-Host: news://news.atman.pl:119 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit