重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
没有参数视图这一实现的吧。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的裕安网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
网上有人用package中定义的变量作为视图的查询参数值(当然不是直接使用package中的参数,而是调用package中返回此变量值的函数),在使用视图之前先调用package中的设置该变量值的方法,这样来曲线实现所谓的“参数视图”。
从代码上来看,你应该是使用的这种方法。那么,你应该在select语句之前,先调用p_view_param中设置值的方法,执行完成之后再执行select。
不过,个人认为直接使用返回结果集的函数会更方便些。
应该就是这三种吧。
1 , IN (参数值传过来给存储过程使用)
2, OUT(存储过程返回结果给该参数)
3. IN OUT(存储过程调用该参数的同时,最后还返回结果给调用的参数)
给你一个 传递参数的例子
SQL CREATE OR REPLACE PROCEDURE HelloWorld2 (
2 p_user_name IN VARCHAR2,
3 p_out_val OUT VARCHAR2,
4 p_inout_val IN OUT VARCHAR2
5 ) AS
6 BEGIN
7 dbms_output.put_line('Hello ' || p_user_name || p_inout_val || '!');
8 p_out_val := 'A';
9 p_inout_val := 'B';
10 END HelloWorld2;
11 /
Procedure created.
SQL DECLARE
2 p_outval VARCHAR2(10);
3 p_inoutval VARCHAR2(10) := '~Hi~';
4 BEGIN
5 HelloWorld2('Edward', p_outval, p_inoutval);
6
7 dbms_output.put_line('p_outval=' || p_outval);
8 dbms_output.put_line('p_inoutval=' || p_inoutval);
9 END;
10 /
Hello Edward~Hi~!
p_outval=A
p_inoutval=B
PL/SQL procedure successfully completed.
SQL