![](/img/trans.png)
[英]Postgresql create trigger for integrity constraint in insert / update
[英]PostgreSQL Trigger on Insert or Update
我有两张桌子。 我想在car
表上创建一个触发器,它将根据某个值在fuel
表上插入或删除。
汽车
id - SERIAL
fuel - BOOLEAN
汽油
car_id - INTEGER
我不包括任何行数据,因为触发器的描述不需要它。
基本上,我想在Car
表上创建一个触发器:
Car.id
到Fuel
表,如果Car.fuel is true
。 Car.fuel is false
,则触发器应删除Fuel
表中Fuel.car_id = Car.id
所有行。 我该怎么做?
编辑:澄清我正在使用Postgres
既然你没有提到RDBMS,我认为它是Oracle。 以下是触发器。 如果您正在使用其他RDBMS,请调整代码以适合语法。
CREATE OR REPLACE TRIGGER TRG_CAR
AFTER INSERT OR UPDATE ON CAR
FOR EACH ROW
BEGIN
IF :new.FUEL THEN
INSERT INTO FUEL (CAR_ID) VALUES (:new.ID);
ELSE
DELETE FROM FUEL WHERE CAR_ID = :new.ID;
END IF;
END;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.