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開発者 - エラーメッセージは、この機能は、単一のスタッフによって行われた注文の合計数をカウントし
表示されません。スタッフIDを受け取り、注文総数を返します。システムにないスタッフIDを入力すると、例外メッセージは表示されません。誰でも、私を助けてくれる?
これは機能しました。どうもありがとう! –