我有一个名为employees的表,其中包含以下数据:
Employee_ID Employee_Salary Employee_HireDate
100 ---- -----
101 ---- -----现在,我想创建一个触发器,它允许我获取新的employee_id并将其递增1,以便可以将其放入表中。我找到了一个这样的例子:
CREATE OR REPLACE TRIGGER employee_b
BEFORE INSERT ON employee
FOR EACH ROW
DECLARE
v_employee_id employee.employee_id%TYPE;
BEGIN
SELECT employee_ID_SEQ.NEXTVAL
INTO v_employee_id
FROM dual;
:NEW.employee_id:=v_employee_id;
END;但我得到的错误是:
ERROR at line 4: PL/SQL: ORA-02289: sequence does not exist我想在insert事件之前使用该触发器:
INSERT INTO employee(employee_salary,employee_hiredate) VALUES (-----,------)对此有什么帮助吗?谢谢
发布于 2012-11-13 05:09:57
跑
create sequence employee_ID_SEQ start with 100 increment by 1;然后编译触发器并尝试它。阅读序列并设置适当的CACHE etc值(默认的cache为20可能就可以了,如果您正在进行大量的快速插入,您可能需要更多)。
https://stackoverflow.com/questions/13351327
复制相似问题