declare v_deptname department.部门名称%type; no_deptname exception; pragma exception_init(no_deptname,-20005); begin dbms_output.put_line('请输入部门名称: '); v_deptname:='&x'; if v_deptname not in ('开发部','市场部','工业部') then raise no_deptname; else dbms_output.put_line('你输入的部门名称: '||v_deptname||', 数据库有!'); end if; exception when no_deptname then dbms_output.put_line('你输入的部门名称不存在!'); dbms_output.put_line(sqlcode||sqlerrm); end; SQL> declare 2 v_deptname department.部门名称%type; 3 no_deptname exception; 4 pragma exception_init(no_deptname,-20005); 5 begin 6 dbms_output.put_line('请输入部门名称: '); 7 v_deptname:='&x'; 8 if v_deptname not in ('开发部','市场部','工业部') then 9 raise no_deptname; 10 else 11 dbms_output.put_line('你输入的部门名称: '||v_deptname||', 数据库有!'); 12 end if; 13 exception 14 when no_deptname then 15 dbms_output.put_line('你输入的部门名称不存在!'); 16 dbms_output.put_line(sqlcode||sqlerrm); 17 end; 18 / 输入 x 的值: 工业部 原值 7: v_deptname:='&x'; 新值 7: v_deptname:=' 工业部'; 请输入部门名称: 你输入的部门名称不存在! -20005ORA-20005: PL/SQL 过程已成功完成。 SQL>