编程开发之--Oracle数据库--存储过程使用动态参数绑定

Posted ZeroMZ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程开发之--Oracle数据库--存储过程使用动态参数绑定相关的知识,希望对你有一定的参考价值。

1、动态参数绑定,可以实现动态的执行不同的sql

--创建包
create or replace PACKAGE MYPACKAGE AS 

  type empcursor is ref cursor;
  procedure queryEmpList(dno in number,empList out empcursor);

END MYPACKAGE;
--创建包体
create or replace PACKAGE BODY MYPACKAGE AS

  procedure queryEmpList(dno in number,empList out empcursor) AS
     str_l_selectsql varchar2(4000);
  BEGIN
    str_l_selectsql :=select * from emp where deptno = :dno;
    --EXECUTE IMMEDIATE str_l_selectsql USING  v_2;--不能实现动态绑定参数
    --str_l_selectsql :=str_l_selectsql || dno;--可以通过拼接sql的方式,但不专业
    --open empList for str_l_selectsql;
    --使用光标,首先要打开光标
    open empList for str_l_selectsql USING  dno;--动态绑定参数
    
    NULL;
  END queryEmpList;

END MYPACKAGE;

 

以上是关于编程开发之--Oracle数据库--存储过程使用动态参数绑定的主要内容,如果未能解决你的问题,请参考以下文章

oracle PL/SQL编程语言之out关键字的使用

oracle PL/SQL编程语言之out关键字的使用

Oracle中存储过程的作用和用法

数据库之Oracle

oracle之存储过程中使用行锁的理解和正确的打开方式

Oracle之存储过程