|
|
Q: oracle数据库下视图过滤调用存储过程问题
A:
关于oracle数据库下视图过滤调用存储过程问题可参考如下例子:- Oracle下创建存储过程:
- 第一步:
- create or replace
- package SP_TEST AS
- type t_cursor is ref cursor;
- procedure testProcedure(c_ref out t_cursor);
- end;
- 第二步:
- CREATE or replace package body SP_TEST as
- procedure testProcedure(c_ref out t_cursor) is
- BEGIN
- open c_ref for select * from "TLK_测试表单";
- END testProcedure;
- end SP_TEST;
复制代码 视图过滤那里调用该存储过程- "call SP_TEST.testProcedure(out:package)"
复制代码 如果是带参的存储过程调用方式为:call procedureName(类型:v1,类型:v2,out:package) //其中V1、V2为参数值
如果您是带参的存储过程,那么您的代码可以写成下面的样子:
var value="aaaa";
var value2="1001";
var sql="call sp_test2 (String:"+value+",String:"+value2+",out:package)";
sql;
类型 的意思:如上面的String 表示参数类型为字符串 日期类型可以写Date 整型可以写Int
若要返回一个数据集 ,请写上 out:package 这个是返回数据集的固定写法 |
|