使用 PostgreSQL。
有一个触发器,它在删除后做一些事情,并制定了一个规则,如果某些事情是真的,则停止删除。
我的问题是:该规则是否也会阻止触发器的发生?
触发器定义:
CREATE TRIGGER wypo AFTER INSERT ON "Wyp" FOR EACH ROW EXECUTE PROCEDURE funk_wyp();
Run Code Online (Sandbox Code Playgroud)
触发功能
CREATE OR REPLACE FUNCTION funk_wyp() RETURNS TRIGGER AS '
DECLARE
dodatek real := (SELECT f.cena FROM filmy f WHERE f.ID = NEW.co);
BEGIN
UPDATE "zyskiklient"
SET "ile" = ile + dodatek
WHERE kto = NEW.kto;
UPDATE "istotnoscklienta"
SET "poziom" = (SELECT poziom(NEW."kto"))
WHERE "kto" = NEW.kto;
RETURN NEW;
END;
' LANGUAGE 'plpgsql';
Run Code Online (Sandbox Code Playgroud)
规则:
CREATE OR REPLACE RULE zasada_delete_konto
AS ON DELETE …Run Code Online (Sandbox Code Playgroud)