我在 oracle apex 中创建了一个序列,并将该序列链接到应用程序端的行。但是,在主从表单上,当我尝试添加新的表单记录时,它不会自动递增到新的 Roster_ID。我的错误是什么?请帮助
这是我的代码:
CREATE TABLE ROSTER(
Roster_ID NUMBER(5),
Working_Hours NUMBER(2),
Shift_Date DATE,
Shift_End_Date DATE,
Shift_ID NUMBER(5) REFERENCES Shift (Shift_ID),
Ward_ID NUMBER(5) REFERENCES WARD (Ward_ID),
Ward_Name VARCHAR2(25) REFERENCES WARD (Ward_Name),
CONSTRAINT PK_ROSTER PRIMARY KEY (Roster_ID),
CONSTRAINT CHECK_WORKING_HOURS CHECK (Working_Hours IN (6, 8, 12))
);
CREATE SEQUENCE Roster_seq START WITH 5 INCREMENT BY 1 NOCACHE NOCYCLE;
CREATE OR REPLACE TRIGGER Roster_T1
BEFORE
INSERT ON Roster
FOR EACH ROW
BEGIN
IF :NEW.Roster_ID is NULL THEN
select Roster_seq.nextval into :NEW.Roster_ID from SYS.DUAL;
END IF;
END;
/
COMMIT;
/