我有一个试图在 12c 中运行的小型 pl/sql 程序,代码如下:
create or replace procedure p_ins_tbl(tbl_name in varchar2) as
begin
execute immediate 'insert into ' ||tbl_name|| 'values(121,''asdfasdf'',6)' ;
end p_ins_tbl;
编译成功,
当我尝试使用执行它时: execp_ins_tbl(countries);
我得到的错误是:
Error starting at line 6 in command:
exec p_ins_tbl(countries)
Error report:
ORA-06550: line 1, column 17:
PLS-00357: Table,View Or Sequence reference 'COUNTRIES' not allowed in this context
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
你有什么理由得到这个?如果是这样,程序中是否有任何错误,请纠正我..提前谢谢。