ITPub博客

首页 > 数据库 > Oracle > PLSQL中使用绑定变量的语法

PLSQL中使用绑定变量的语法

原创 Oracle 作者:xypincle 时间:2017-04-12 19:58:46 0 删除 编辑
execute immediate [带绑定变量的目标sql] using [对应绑定变量的具体输入值];

举例1:
declare
    vc_name varchar2(10);
begin
    execute immediate 'select ename from emp where empno=:1' into vc_name using 7369;
    dbms_output.put_line(vc_name);
end;
/

举例2:
declare
    vc_column varchar2(10);
    vc_sql varchar2(4000);
    n_temp number;
    vc_ename varchar2(10);
begin
    vc_column := 'enpno';
    vc_sql := 'delete from emp where '||vc_column||' = :1 returning ename into :2';
    execute immedaite vc_sql using 7369 returning into vc_ename;
    dbms_output.put_line(vc_ename);
    commit;
end;
/

举例3:
declare
    cur_emp sys_refcursor;
    vc_sql varchar2(4000);
    type namelist is table of varchar2(10);
    enames namelist;
    CN_BATCH_SIZE constant pls_integer := 1000;
begin
    vc_sql := 'select ename from emp where empno > :1';
    open cur_emp for vc_sql using 7900;
    loop
        fecth cur_emp bulk connect into enames limit CN_BATCH_SIZE;
        for i in 1..enames.count
        loop
            dbms_output.put_line(enames(i));
        end loop;
        exit where ename.count < CN_BATCH_SIZE;
    end loop;
    close cur_emp;
end;
/

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28878983/viewspace-2137128/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: ORACLE锁机制
请登录后发表评论 登录
全部评论

注册时间:2013-05-11

  • 博文量
    208
  • 访问量
    212352