Я пытаюсь написать триггер PostgreSQL в Oracle, и я застрял с синтаксисом.Вот триггер:
CREATE OR REPLACE FUNCTION trg_directori_ins_before_row()
RETURNS TRIGGER AS $trg_directori_ins_before_row$
BEGIN
UPDATE directori_teatru SET dataincetarefunctie=NEW.datanumirefunctie-1 WHERE idteatru=NEW.idteatru AND dataincetarefunctie is NULL; RETURN NEW;
END; $trg_directori_ins_before_row$ LANGUAGE plpgsql;
CREATE TRIGGER trg_directori_ins_before_row BEFORE INSERT ON directori_teatru FOR EACH ROW EXECUTE PROCEDURE trg_directori_ins_before_row();
Может кто-нибудь, пожалуйста, помогите мне написать это в Oracle?Большое спасибо!
Позднее редактирование:
Есть театр с менеджером, и этот триггер предназначен для установки нового менеджера для этого театра.
CREATE OR REPLACE FUNCTION trg_managers_ins_before_row()
RETURNS TRIGGER AS $trg_managers_ins_before_row$
BEGIN
UPDATE managers_theatre SET endjobdate=NEW.startdatejob-1
WHERE idtheatre=NEW.idtheatre AND endjobdate is NULL;
RETURN NEW;
END;
$trg_managers_ins_before_row$ LANGUAGE plpgsql;
CREATE TRIGGER trg_managers_ins_before_row
BEFORE INSERT ON managers_theatre
FOR EACH ROW EXECUTE PROCEDURE trg_managers_ins_before_row();