我遇到下面的触发器问题。我正在使用SQLDeveloperx86 Build 15.21(v4.0.2.15)。编译器日志为我提供了此帖子标题中显示的错误。因此,我无法使用触发器。死亡的波浪线出现在" /"符号
create or replace trigger clientexists
after insert on DISPATCH
for each row
declare
countRows Integer;
begin
select count(*) into countRows from CLIENT
where CLIENT.name = DISPATCH.client;
if countRows = 0 then
insert into CLIENT
values(:new.client,NULL,NULL,NULL);
end if;
end;
/
show error
答案 0 :(得分:0)
如果您从代码编辑器窗口进行编译,则/
无效:
并且show errors
都不是,因为它将被视为该触发器的语句的一部分,而不是单独的客户端命令。如果您同时删除了这两个,那么您将获得一个ORA-00904,因为您引用了DISPATCH.client
而不是:NEW.client
;如果纠正它编译:
但是如果你从SQL工作表中执行代码,那么你需要使用尾部斜杠并且可以使用show errors
: