在过程中未选择任何行时显示自定义消息

时间:2018-06-13 10:35:34

标签: oracle plsql

我在几天内接受了关于PL / SQL的考试,在回顾我的练习时,我找到了一个我似乎无法解决的问题。我必须创建一个过程,返回链接到给定country_id的所有部门名称。如果没有与country_id相关联的部门名称,则该程序必须返回类似“未找到任何内容”的内容。我在使用此自定义错误消息时遇到问题。

我的代码是:

CREATE OR REPLACE PROCEDURE country_dept(p_land_id IN countries.country_id%TYPE)
AS
 v_countries NUMBER;
BEGIN
 FOR rec IN (SELECT d.department_name 
        FROM departments d
        INNER JOIN locations l ON d.location_id=l.location_id
        INNER JOIN countries c ON c.country_id=l.country_id
        WHERE c.country_id=p_land_id) 
 LOOP
  IF rec.department_name IS NOT NULL THEN
   DBMS_OUTPUT.PUT_LINE(rec.department_name);
  ELSIF rec.department_name IS NULL THEN
   DBMS_OUTPUT.PUT_LINE('Er zijn geen departmenten gevestigd in het land met id '||p_land_id);
  END IF;
 END LOOP;
END country_dept;

如果查询没有找到任何数据,如何打印邮件?

0 个答案:

没有答案