当前位置: 代码迷 >> Oracle开发 >> oracle中PL/SQL集合里exists方法的使用。解决思路
  详细解决方案

oracle中PL/SQL集合里exists方法的使用。解决思路

热度:63   发布时间:2016-04-24 08:01:14.0
oracle中PL/SQL集合里exists方法的使用。
为什么我用PL/SQL集合里的exists()方法时一直返回是false啊,从来没返回真。
declare
  type eno_table_type is table of emp.empno%type index by binary_integer;
  eno_table eno_table_type;
 begin
  select empno bulk collect into eno_table from emp;
  if eno_table.exists(7788) then
  dbms_output.put_line('数据正确');
  else
  dbms_output.put_line('数据不正确');
  end if;
 end;
上面一直输出‘数据不正确’。但7788确实是emp表里的一个编号,试了其他的数也不行,一直返回假,没有一次是真。
这是怎么回事啊?期待详解…………

------解决方案--------------------
你查询出来的数据有7788条吗?如果没有就显示"数据部正确",这里的7788是说明你查询的结果是否有第7788条,如果你查询结果是10000条,那么这是数据就会显示"数据正确"
------解决方案--------------------
SQL code
declare  i: Integer;begin  select Count(1)     into i    from dual   where Exists (select 1                     from emp                  where empno = 7788);  if i = 0 then    dbms_output.put_line('数据不正确');   else    dbms_output.put_line('数据正确');  end if;end;
  相关解决方案