我定义了一个游标:
CURSOR cur_abc IS
execute immediate 'select * from abc where username in(' || parameter || ')';其中Parameter是参数,abc是一个表
但这样是没办法执行,请各位大侠帮帮我,我现在急用呢,谢谢!
CURSOR cur_abc IS
execute immediate 'select * from abc where username in(' || parameter || ')';其中Parameter是参数,abc是一个表
但这样是没办法执行,请各位大侠帮帮我,我现在急用呢,谢谢!
解决方案 »
- 怎么给sybase数据库中的select取别名
- 作业贴一枚呀 Write the form pictured below
- 有没有实时监控数据表变化高性能的方法?
- 同表中a字段内容全部更新b字段内容
- 继续向达人请教具体案例的嵌套查询问题.. -_- 麻烦了两天实在不好意思..
- 请教一句简单的sql语句
- 哪里有像sql server中事件探测器一样的oracle工具下载?
- 初级问题,每月执行次,请高高手指点
- pb连接oracle数据库的问题!!(急,在线等待)
- oracle execute immediate('select 1/0 from dual') 的问题
- oracle816(64位) for AIX,怎样在windows下搭建测试环境?
- 触发器中能否判断当前会话的用户名和程序名?
CURSOR cur_abc(as_para varchar2) IS
select * from abc where username in(as_para);OPEN cur_abc(实参);
user_name in varchar2,
errtext out varchar2)
is
v_num number(5);
cursor t_cursor is
select TABLE_NAME
from all_tables
where lower(OWNER) = user_name;
t_vale t_cursor%rowtype;
t_val t_vale.TABLE_NAME%type;
begin
open t_cursor;
loop
fetch t_cursor into t_val;
exit when t_cursor%NOTFOUND;
execute immediate 'select count(*) from '|| t_val into v_num;
if v_num > 0 then
dbms_output.put_line(v_num||' '||substr(t_val,1,30));
end if;
end loop;
close t_cursor;
exception
when others then
errtext := SQLERRM;
end;
CURSOR cur_abc IS
select * from abc where username in('|| parameter ||' );
begin
parameter:='asdf';
open cur_abc;
loop
fetch cur_abc into var;
exit when cur_abc%notfound;
/* process*/
end loop;