我需要在Postgres触发器方面的帮助。
我有一个包含2个列的表:
sold boolean;
id_shop int;
它存储物品是否已出售,或者它所在的商店。
我需要一个触发器,如果我把“已售”更改为true,则也将id_shop
更改为NULL
(如果已售则不能在商店中...)
我尝试了不同的方法,但它们都无法正常工作或在更新命令上产生错误...
create or replace function pardota_masina_veikals() RETURNS trigger AS $pardota_masina$
begin
IF NEW.sold=true THEN
update masinas
SET id_shop=null WHERE id=NEW.id;
END IF;
RETURN NEW;
END;
$pardota_masina$ LANGUAGE plpgsql;
CREATE TRIGGER pardota_masina_nevar_but_veikala
AFTER INSERT OR UPDATE ON masinas FOR EACH ROW EXECUTE PROCEDURE pardota_masina_veikals();