execute immediate调用有参数的function 具体的说就是, 我有一张表A。A中存的是function的名字。还有一张表B。B中存放function的参数。两张表用ID关联。现在我需要写一个存储过程C。在C中,我要查询A表和B表。将得到的信息拼成一个v_sql.然后执行。就是这样了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这样都可以http://topic.csdn.net/u/20100226/15/474cf774-48a3-40d9-ab4d-ffdc6f970878.html楼主的肯定没问题了 有困难啊。求各位帮忙。我现在的问题是:如何拼v_sql?v_sql是个什么样的格式。比如调存储过程拼成的是v_sql:=“call test(aa,bb,ccc);”如果是function呢?我要如何拼?execute immediate v_sql;后面需要绑定哪些变量?怎么绑定?求各位帮忙 这样不就可以了吗? 为什么还要拼成sql 再动态执行? 结果不是一样的吗? upper_bound_stmt := 'Select MIN(col_val) FROM (Select /*+ INDEX_DESC(' || storage_tab_name || ') */ DISTINCT ' || 'col_val FROM ' || storage_tab_name || ' ORDER BY ' || 'col_val DESC) WHERE rownum <= ' || :1; EXECUTE IMMEDIATE upper_bound_stmt Using lower_pos INTO upper_bound;--PS:--1.lower_pos 代表where条件中的:1--2.upper_bound 代表查询出来的结果存放到变量upper_bound 急救!急救! 我是想在查询职工表的信息前只给当前用户赋予查询的权限然后在查完后收回权限但创触发器时报错 在异地的两个oracle数据库如何实现同步更新、插入、修改、册除、表结构,单向,双向修改都行?? esql中怎么动态调用存储过程? 一个存储过程的写法 将'2007年04月01日'转换成日期型的问题 菜菜鸟求一数据写入语句 求ORACLE的函数集,要求有各种参数的具体说明 要生成和当前表中相反的记录有简单的语句吗?是不是要用游标全选出来然后一条一条写? 求助各位oracle的备份问题! 如何写sql 语句呢? 关于序列的一个问题
http://topic.csdn.net/u/20100226/15/474cf774-48a3-40d9-ab4d-ffdc6f970878.html楼主的肯定没问题了
如果是function呢?我要如何拼?
execute immediate v_sql;后面需要绑定哪些变量?怎么绑定?求各位帮忙
upper_bound_stmt := 'Select MIN(col_val) FROM (Select /*+ INDEX_DESC(' ||
storage_tab_name || ') */ DISTINCT ' ||
'col_val FROM ' || storage_tab_name || ' ORDER BY ' ||
'col_val DESC) WHERE rownum <= ' || :1;
EXECUTE IMMEDIATE upper_bound_stmt Using lower_pos INTO upper_bound;
--PS:
--1.lower_pos 代表where条件中的:1
--2.upper_bound 代表查询出来的结果存放到变量upper_bound