Проблема Oracle Script - создание триггера не прекращается - PullRequest
3 голосов
/ 20 сентября 2010

Я пытаюсь внести некоторые изменения в базу данных оракула, и для этого есть сценарий.Проблема в том, что когда он достигает точки в сценарии, где я создаю триггер, кажется, что блок «Создать триггер» не завершается должным образом, когда я смотрю на триггер, он содержит весь оставшийся код в сценарии.*

Вот что у меня есть:

CREATE OR REPLACE TRIGGER user_publish_log_trg
  BEFORE INSERT ON USER_PUBLISH_LOG
  FOR EACH ROW
    BEGIN
    SELECT user_publish_log_seq.NEXTVAL INTO :NEW.Id FROM dual;
    END user_publish_log_trg;

CREATE TABLE USER_APPROVAL_LOG
(
    Id number(10) NOT NULL ,
    CommodityId number(10) NOT NULL,
    QuarterEndDate DATE NOT NULL,
    ActionId int NOT NULL ,
...

Что я делаю не так при завершении триггера?

1 Ответ

13 голосов
/ 20 сентября 2010

Вам нужно завершить PL / SQL, используя косую черту в новой строке, например:

CREATE OR REPLACE TRIGGER user_publish_log_trg
  BEFORE INSERT ON USER_PUBLISH_LOG
  FOR EACH ROW
    BEGIN
    SELECT user_publish_log_seq.NEXTVAL INTO :NEW.Id FROM dual;
    END user_publish_log_trg;
/

CREATE TABLE USER_APPROVAL_LOG
(
    Id number(10) NOT NULL ,
    CommodityId number(10) NOT NULL,
    QuarterEndDate DATE NOT NULL,
    ActionId int NOT NULL ,
...
...