前台可以选择排序的方式,我传参到存储过程中,order by v_orderby(参数) 的时候不管用,怎么解决

解决方案 »

  1.   

    在存储过程中用动态SQL,把全部参数(包括order by中参数)组成一个字符串,然后再执行字符串的SQL命令。
      

  2.   

    这个应该在我这里不可行,我返回前台是一个游标,前台直接显示的游标里的table
      

  3.   


    declare
      l_order varchar2(100) := 'ename';
      cur sys_refcursor;
    begin
      open cur for ('select * from emp order by ' || l_order);
    end;