码迷,mamicode.com
首页 > 数据库 > 详细

Oracle 记录

时间:2015-02-11 12:39:24      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:

存储过程实现多条件查询

CREATE OR REPLACE PACKAGE TESTPACKAGE is
type TEST_CURSOR is REF CURSOR;
PROCEDURE PROCEDURE3 (RNAME IN VARCHAR2, TEST_CURSOR OUT TEST_CURSOR);
END TESTPACKAGE;

CREATE OR REPLACE PACKAGE BODY TESTPACKAGE IS
  PROCEDURE PROCEDURE3 
  (
    RNAME IN VARCHAR2,
    TEST_CURSOR OUT TEST_CURSOR
  ) is
  str_sql varchar2(500);
  BEGIN
    str_sql := select * from ROLE where 1=1 ;
    
    if RNAME is not null or NVL(RNAME, null) <> null then
         str_sql := str_sql || and RNAME =  || RNAME || ‘‘;
    end if;
    open TEST_CURSOR for str_sql;
    
  END PROCEDURE3;
END TESTPACKAGE;

调用:

1.执行

var c refcursor;
exec TESTPACKAGE.PROCEDURE3(‘‘, :c);

-------------------------------------------------

2.打印

print :c;

Oracle 记录

标签:

原文地址:http://www.cnblogs.com/coolicer/p/4285626.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!