U kunt dit doen door foutcontrole in te schakelen en vervolgens een fout te melden.
ACCEPT p_cname PROMPT 'Enter Customer Name: '
WHENEVER SQLERROR EXIT SUCCESS ROLLBACK;
DECLARE
v_count INTEGER;
BEGIN
SELECT COUNT(*) INTO v_count
FROM customer
WHERE cname = '&p_cname';
IF v_count > 0 THEN
raise_application_error( -20100, 'Customer already exists' );
END IF;
END;
/
-- Issue a new WHENEVER statement here if you want different error-handling for
-- the rest of the script
-- Other ACCEPT statements if a match was not found.
In de WHENEVER
commando, de SUCCESS
trefwoord betekent dat SQLPlus een succescode terugstuurt naar de shell van waaruit deze is aangeroepen. U kunt ook FAILURE
. gebruiken om een algemene foutcode te retourneren, of andere opties om specifieke waarden te retourneren.