1
CREATE OR REPLACE Function fun_Find_Staff_Name(v_staffid IN NUMBER)
RETURN VARCHAR2
IS
staff_name VARCHAR2(60);
CURSOR c_staff IS
SELECT staff_firstName || ' ' || staff_lastName
into staff_name
FROM staff
WHERE staff_id = v_staffid;
BEGIN
OPEN c_staff;
FETCH c_staff INTO staff_name;
CLOSE c_staff;
RETURN staff_name;
END;
该函数需要一个staff_id并返回相应的员工姓名。如果用户输入无效的ID并显示错误消息,我想处理该异常?我在哪里添加异常块?SQL如何处理用户定义函数中的异常?
SET serveroutput ON;
DECLARE
v_staff_ID NUMBER := &StaffID;
v_message VARCHAR2(100);
BEGIN
v_message := fun_Find_Staff_Name(v_staff_ID);
dbms_output.put_line(v_message);
END;
我用这个anonyomus块来检查函数是否正常工作。