Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Instruções Oracle SQL*Plus ACCEPT


Você pode fazer isso ativando a verificação de erros e gerando um erro.
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.

No WHENEVER comando, o SUCCESS palavra-chave significa que o SQLPlus retornará um código de sucesso de volta ao shell do qual foi invocado. Você também pode usar FAILURE para retornar um código de falha genérico ou outras opções para retornar valores específicos.