我有一个存储过程
create or replace procedure GETFILE(TableName in VARCHAR2)
is
No_Rows Number :=0;
state varchar2(100);
begin
state :=' select count(*) into :p_id from ' || inTableName;
EXECUTE IMMEDIATE state using out NO_ROWS;
end;
end;
已成功创建存储过程。 但是当我使用它运行它时:
declare
begin
GETFILE('TABLE_NAME');
end;
显示“ORA-01006:绑定变量不存在” 错误。 有什么想法吗?
答案 0 :(得分:2)
这是否符合您的要求(您可能想删除put_line)......:
create or replace procedure GETFILE(inTableName in VARCHAR2)
is
No_Rows Number :=0;
state varchar2(100);
begin
state :=' select count(*) from ' || inTableName;
dbms_output.put_line(state);
EXECUTE IMMEDIATE state into NO_ROWS;
dbms_output.put_line(no_rows);
end;
/
declare
begin
getfile('dual');
end;
/
答案 1 :(得分:0)
我认为这里没有任何编码错误 所以,我认为你必须确保你正在创建和执行你的程序 在相同的数据库或相同的架构