不好意思,搞错了,应为:
create or replace function strtoint(@value varchar)
return integer
as
    declare    @tempint integer;
    declare    @return_data  integer;
    declare    @count    integer;
    declare    @len    integer;
    declare    @tempstr varchar(10);
begin
    @tempstr:=rtrim(ltrim(@value));
    @len:=length(@tempstr);
    @count:=1;
    @return_data:=0;
    while (@count<=@len) loop
        if (substr(@tempstr,@count,1)='0')  then
            @tempint:=0;
        else if (substr(@tempstr,@count,1)='1') then
            @tempint:=1;
        else if (substr(@tempstr,@count,1)='2') then
            @tempint:=2;
        else if (substr(@tempstr,@count,1)='3') then
            @tempint:=3;
        else if (substr(@tempstr,@count,1)='4') then
            @tempint:=4;
        else if (substr(@tempstr,@count,1)='5') then
            @tempint:=5;
        else if (substr(@tempstr,@count,1)='6') then
            @tempint:=6;
        else if (substr(@tempstr,@count,1)='7') then
            @tempint:=7;
        else if (substr(@tempstr,@count,1)='8') then
            @tempint:=8;
        else if (substr(@tempstr,@count,1)='9') then
            @tempint:=9;
        else 
            return 0;
        end if;
        @return_data:=@return_data*10+@tempint;
        @count:=@count+1;
    end loop;
    return @return_data;
end; 

解决方案 »

  1.   

    试一下:
    create or replace function strtoint(value varchar)
    return integer
    is
     tempint integer;
     return_data  integer;
     count    integer;
     len    integer;
     tempstr varchar(10);
    begin
    ......
    end ;
      

  2.   

    不行,出以下错误提示:
    ORA-00604: error occurred at recursive SQL level 1
    ORA-01000: maximum open cursors exceeded
      

  3.   

    以上问题我已解决,请帮我看一下下面的问题:
    以下语句oracle中好像不支持:
    if not exists (select * from tablea where ....) then
    ....
    end if;
    我该怎样用其它方法实现呢?
      

  4.   

    定义变量 a
    select a=count(*) from tablea where...
    if a>0 then
    ...
    endif;
      

  5.   

    (select * from tablea where ....)的返回值是什么类型?
      

  6.   

    lubj;你开始的问题是怎样解决的?Please E_Mail to [email protected].  
        ---Thank you very much!