CREATE OR REPLACE FUNCTION func_totalStaffOrders( v_staffID IN INTEGER)
RETURN VARCHAR
AS v_totalOrders NUMBER; MESSAGE VARCHAR2(100);
BEGIN IF v_staffID IS NOT NULL THEN SELECT COUNT(order_id) INTO v_totalOrders FROM orders WHERE staff_ID = v_staffID;
MESSAGE := 'Staff with the ID ' || v_staffID ||' has took an overall of ' || v_totalOrders || ' order/s.'; RETURN MESSAGE;
ELSE MESSAGE:='Null values are not allowed.'; RETURN MESSAGE; END IF; EXCEPTION WHEN NO_DATA_FOUND THEN MESSAGE := 'Invalid staff ID entered.'; RETURN MESSAGE; WHEN OTHERS THEN MESSAGE := 'Error! ' || SQLERRM;
RETURN MESSAGE; END;
的Oracle SQL Developer - 错误消息未出现
此函数计算由单一的一名工作人员的订单总数。它需要一个员工ID并返回订单总数。如果输入不在系统中的员工ID,则不显示异常消息。任何人都可以,请帮助我吗?
它的工作!非常感谢! –