就如JAVA中的split()方法一样,一个字符串以","间隔作为参数传入存储过程。
要在存储过程中进行分割,然后在操作。谢谢谁能告诉我呀?

解决方案 »

  1.   

    可以写个例子吗?我不熟悉呵呵
    strSql = "1,2,3,4,5,6,7,8,9,10";
    怎么循环出来?谢谢啦
      

  2.   

    declare
           str varchar2(100);
           startposition number(10);
           len number(10);
           output varchar2(100);
    begin
         str:='hello,nick,xingxing';
         startposition:=1;
         loop
                     select instr(str,',',startposition ) into len from dual;
                     dbms_output.put_line(startposition);
                     dbms_output.put_line(len);
                    
                     if len!=0 then 
                       select substr(str,startposition,len-startposition) into output from dual;
                     else
                        select substr(str,startposition) into output from dual;
                        dbms_output.put_line(output);
                        exit;
                     end if;  
                    
                     dbms_output.put_line(output);
                     startposition:=len+1;   
                     dbms_output.put_line('-------------------------------------');            
       end loop;
        
    end;
      

  3.   

    详见http://blog.csdn.net/heyixiang/archive/2005/11/12/527973.aspx