`

ORA-01422: 实际返回的行数超出请求的行数

 
阅读更多
做了个函数的例子,随便写了个,如下:
create or replace function type_function(userno varchar2)
return varchar2
is
type yyy is table of varchar2(10) index by binary_integer;
xx yyy;
vv varchar2(40);
begin
   vv :='1233';
   select mobileid  into xx(20) from tuserinfo where userno=userno;
   vv :=xx(20);

   return vv;

   end;


执行函数
select type_function('00060577') from dual;


居然报:ORA-01422: 实际返回的行数超出请求的行数

通过网上查找,因为我的参数userno和搜索条件一样,现在修改为
create or replace function type_function(userno1 varchar2)
return varchar2
is
type yyy is table of varchar2(10) index by binary_integer;
xx yyy;
vv varchar2(40);
begin
   vv :='1233';
   select mobileid  into xx(20) from tuserinfo where userno=userno1;
   vv :=xx(20);

   return vv;

   end;


正常返回了
分享到:
评论
3 楼 李小斌_2014 2015-07-07  
     我也遇到了,现在完美解决。
2 楼 fke153 2013-06-04  
这个问题确实很坑人啊,学习了
1 楼 onTheJavaWay 2013-01-10  
oracle这个问题真是太扯了。。。。

相关推荐

Global site tag (gtag.js) - Google Analytics