Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle SQL*Plus ACCEPT-Anweisungen

Sie können dies tun, indem Sie die Fehlerprüfung aktivieren und dann einen Fehler 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.

Im WHENEVER Befehl, der SUCCESS Schlüsselwort bedeutet, dass SQLPlus einen Erfolgscode an die Shell zurückgibt, von der es aufgerufen wurde. Sie können auch FAILURE verwenden um einen generischen Fehlercode zurückzugeben, oder andere Optionen, um bestimmte Werte zurückzugeben.