过程里
select into 变量
但是表名是由传进来的参数动态拼接的。
1.直接过程里执行select into 变量 from 表名 where ,但是不会拼表名。
2.用execute immediate sql_str的话应该也不行吧。
请教高手这里应该怎么实现?
select into 变量
但是表名是由传进来的参数动态拼接的。
1.直接过程里执行select into 变量 from 表名 where ,但是不会拼表名。
2.用execute immediate sql_str的话应该也不行吧。
请教高手这里应该怎么实现?
sql_str := '';
execute immediate sql_str into 变量;
declare
v_importTBName varchar2(10);
v_tbName varchar2(10);
v_sql varchar2(4000);
begin
--传递的表名
v_importTBName:='v_test';
v_sql:='select count(1) into v_tbName from '|| v_importTBName;
dbms_output.put_line(v_sql);
--execute immediate v_sql;
end;/*
只能输出语句,
select count(1) into v_tbName from v_test
带有into 的语句不能直接用 execute immediate ,
等待高手来讲解...
*/
execute immediate
execute immediate
execute immediate