8
私はPostgresトリガーに助けが必要です。Postgresトリガー機能
私は2列を持つテーブルを持っている:
sold boolean;
id_shop int;
アイテムが販売されている、またはその位置で購入いただけれる場合、それが格納されます。
私はさまざまな方法を試してみました
(販売どうかはお店にすることはできません...)私がtrueに「販売」を変更した場合、それはまたNULL
にid_shop
を変更し、トリガーを必要とします、しかし、それは仕事や更新CMD上のエラーを与えていない...あなたは、更新(または挿入)された行の値を変更したい場合は、前にトリガを必要とするすべての
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();
ありがとうございます –