-1

我在生成 Oracle 基础的 SQL 文件中有三个触发器。当我启动文件时,我没有“触发器已创建”的消息,并且似乎在触发器创建时执行被锁定(我之前对所有内容都有创建确认)。

你能帮助我吗 ?以下是触发器:

CREATE TRIGGER TrainInfo_nbDispo1e_update_tr
BEFORE UPDATE ON TrainInfo
FOR EACH ROW
BEGIN
   IF :NEW.nbDispo1e != :OLD.nbDispo1e
   THEN
       RAISE_APPLICATION_ERROR(-20101, 'Blahblahblah');
   END IF;
END;


CREATE TRIGGER TrainInfo_nbDispo2e_update_tr
BEFORE UPDATE ON TrainInfo
FOR EACH ROW
BEGIN
   IF :NEW.nbDispo2e != :OLD.nbDispo2e
   THEN
       RAISE_APPLICATION_ERROR(-20101, 'Blahblahblah');
   END IF;
END;



CREATE TRIGGER Trajet_Distance_update_tr
BEFORE UPDATE ON Trajets
FOR EACH ROW
BEGIN
   IF :NEW.distance != :OLD.distance
   THEN
       RAISE_APPLICATION_ERROR(-20101, 'Blahblahblah');
   END IF;
END;
4

1 回答 1

0

在每个 END 之后放置 /;陈述。

当你把 / 它告诉编译器执行 sql 语句存在于缓冲区或以上 /

于 2015-05-25T09:47:44.843 回答