早上好,各位朋友。
请教个问题,在plsql中,使用绑定变量的方法除了动态sql外,还有别的方式吗?

解决方案 »

  1.   

    SQL>--绑定变量在匿名块中的使用
     declare
      2  var_ename emp.ename%type;
      3  begin
      4  select ename into var_ename from emp where empno=&empno;
      5  dbms_output.put_line('员工姓名为:'||var_ename);
      6  exception when no_data_found then
      7  dbms_output.put_line('未找到该员工');
      8  end;
      9  /
    输入 empno 的值:  7369
    原值    4: select ename into var_ename from emp where empno=&empno;
    新值    4: select ename into var_ename from emp where empno=7369;
    员工姓名为:SMITH
      

  2.   

    很多地方都可以用绑定变量啊,不一定是动态SQL中,只要指定绑定的变量参数就可以了,
    select * from emp where empno=:empno;
      

  3.   

    在plsql块的sql中使用变量,会自动解析为绑定变量
      

  4.   

    本帖最后由 wildwave 于 2010-09-14 00:41:11 编辑
      

  5.   

    多谢楼上各位。果然如此,我之前有所误解了,认为只有通过execute immediate 'select xxx' using v;
    才能绑定到变量,其实静态sql也是自动绑定变量的。