存储过程 ora-00904求大神,这个做不了,下面的进行不下去啊!!![解决办法]--存储过程没有返回值,不能这么调
存储过程 ora-00904 求大神,这个做不了,下面的进行不下去啊!!!
[解决办法]
--存储过程没有返回值,不能这么调用。
--应当这么调用。
begin
get_value('SFCBG','02');
end;
[解决办法]
EXECUTE IMMEDIATE table_query RETURNING INTO table_data;
去掉returning,改成
EXECUTE IMMEDIATE table_query INTO table_data;
同时还得保证你那个SQL只能返回一条数据。
[解决办法]
EXECUTE IMMEDIATE table_query RETURNING INTO table_data;
这里的table_data没有定义。
如果只有一个返回值,定义成varchar2即可,
DBMS_OUTPUT.put_line(table_data.CNNAME); 这里改成DBMS_OUTPUT.put_line(table_data)
如果有多个,要定义成
type stringtable is table of varchar2(4000);
table_date stringtable;
然后
EXECUTE IMMEDIATE table_query RETURNING INTO table_data;
那里改成EXECUTE IMMEDIATE table_query RETURNING bulk collect INTO table_data;
输出那里也要改成循环。
