日期:2014-05-17  浏览次数:20776 次

oracle 动态构件查询语句
我需要写一个存储过程,其中v_where(VARCHAR2)是我构造的查询条件语句,也就是sql语句的where语句,我这样写这个查询语句有没有问题?

select   *   from   ms_test
v_where;

谢谢大家哦.

------解决方案--------------------
你都自己构件好了,在里面运行不就知道了。
create procedure v_where2(where1 varchar2)
is
stat varchar2(100);
begin
stat:= 'select * from emp '||where1;
execute immediate stat;
end;
/
不到这个语句行不行
------解决方案--------------------
sql_string := 'SELECT DISTINCT * FROM MS_CLASSINFO ' || v_where; --构件的sql语句
execute immediate sql_string;

自己不是写出来了吗?还有什么问题?
------解决方案--------------------
描述一下你碰到了什么问题,这样大家才好针对性的分析解决
------解决方案--------------------
应该这样用:
sql_string := ...;
open cursor for sql_string;