本帖最后由 oracleen 于 2011-09-28 17:16:30 编辑

解决方案 »

  1.   

    第二个过程中
    EXECUTE IMMEDIATE '
    select name,salary from emp
    where id=:1'
    using p_id
    returning into v_name,v_salary;改为:
    EXECUTE IMMEDIATE '
    select name,salary from emp
    where id=:1'
    into v_name,v_salary
    using p_id;
      

  2.   

    谢谢楼上的弟兄,解决了直接!
    Oracle中提供了Execute immediate语句来执行动态SQL,语法如下:Excute immediate 动态SQL语句 using 绑定参数列表 returning into 输出参数列表;
    为什么它这个方式就玩不转呢,二者有啥区别么
      

  3.   

    Excute immediate 动态SQL语句 using 绑定参数列表 returning into 输出参数列表;你在哪里看到有这么写的?这种写法是错误的,returning into不在这里用,要用也是在动态SQL中update操作时有这样写的