解决方案 »

  1.   

    where arcode in (v_sql); 
    这么写相当于
    where arcode=v_sql;
      

  2.   

    楼主这样使用只是吧v_sql当做一个字符串处理,而不会处理成你想要的in的效果。
    这种情况得用动态sql,
    execute immediate 'update ar_settleplan set accvouno = '||v_VoucherNo||', accdate = sysdate, accstate = ''0'' where arcode in ('||v_sql||')' 
      

  3.   

    谢谢,改成这种动态sql,成功更新了。