PLS-00103: 遇到符号 "end-of-file"

PLS-00103: Encountered the symbol "end-of-file"

我正在创建一个包,然后我提示我在 table 上创建一个触发器,它将检查旧值和新值:

set serveroutput on
set LIN 200
set feedback off
set verify off
set embedded on
set heading off
spool tmp.sql

prompt create or replace trigger aud_&1
prompt after update on &1
prompt for each row
prompt begin

select '    audit_pkg.check_val( ''&1'', ''' || column_name ||          ''', ' || ':new.' || column_name || ', :old.' ||             column_name || ');'
from user_tab_columns where table_name = upper('&1') 
/
prompt end;
prompt /

spool off
set feedback on
set embedded off
set heading on
set verify on

@tmp
-------------

但是当我 运行 脚本时,它总是编译错误:

这意味着它错过了 end:

之后的 ;

所以我的问题是我需要在我的脚本中添加什么以包含所需的 ; 是的,当然我自己尝试了一些事情,例如在第 95 行添加 ;; 但是没有任何作用。

类似于在脚本中生成 plsql 调用。 而不是

prompt end;

select 'end;' from dual
/