PLSQL select into 为空的时候 语句容易报错的处理方法

来源:互联网 发布:三星官网刷机软件 编辑:程序博客网 时间:2024/06/06 00:39

说明:使用select...into语句时,如果查询返回的数据不是1行,就会报no_data_found或者to_many_rows两种异常。

案例:根据部门号,查询部门名称。

处理方法:巧用聚合函数处理

DECLARE

  v_dname dept.dname%TYPE;

BEGIN

   SELECT MAX(dept.dname) INTO v_dname

   FROM dept WHERE deptno=90;

   IF(v_dname IS NULL)THEN

      dbms_output.put_line('此部门不存在!');

   ELSE

      dbms_output.put_line(v_dname);

   END IF;

  

END;

 

说明:利用聚合函数一定会返回结果的特点, 避免了使用select...into语句容易抛出异常的问题。