0
我是PL/SQL新手。我正在使用oracle 11g XE以及sql开发人员。我试图创建INSERT触发器后创建如下如何在触发器体中使用绑定变量?
create or replace trigger tr1
after
insert ON
employee
for each row
begin
print :new.emp_id;
end;
雇员表如下
create table employee
(emp_id varchar2(5) primary key,
emp_name varchar2(10),
salary number,
company varchar2(10) foreign key references companies(comp_name)
);
当我跑我得到了“输入结合”窗口中绑定的声明变量:新。但我很困惑,为什么我需要输入:new,因为它是pseudorecord。然后,我输入'员工'作为新的价值。现在我收到以下错误。
Error(2,8): PLS-00103: Encountered the symbol "" when expecting one of the following: := . (@ % ; The symbol ":=" was substituted for "" to continue.
当您编译它时,SQL开发人员会要求您输入绑定变量。只要把它们留空即可。他们不是这里错误的来源。当触发器在Insert上运行时,new.emp_id的值将是插入到表中的值。它会自动填充。编译触发器,然后尝试插入以进行测试。 – Hawk
@Hawk。谢谢你的回复。我编译了它。但它有我在问题中指定的错误。 – BabyboBNukes
如果问题是SQL Developer弹出提示,请标记您的问题'sqldeveloper'。我自己并不熟悉它。 –