Oracle

Excepciones predefinidas en PL/SQL

Por : Jhons_1101
2019-02-05
Tags :
PL/SQL declara excepciones a nivel mundial en el paquete STANDARD, por lo que no los necesita declarar a sí mismo.
Redeclarando las excepciones predefinidas es propenso a errores debido a que su declaración local. anulando la declaración global. (Lo explicado anteriormente como 'prioridades de las excepciones').

Por ejemplo, si se declara una excepción nombrada invalid_number y luego PL/SQL genera la excepción predefinida INVALID_NUMBER internamente, un controlador escrito para INVALID_NUMBER no detectará la excepción interna. En tales casos, debe usar la notación de puntos para especificar la excepción:


EXCEPTION
  WHEN invalid_number OR STANDARD.INVALID_NUMBER THEN
    -- handle the error
END;

compartir en facebook compartir en Google compartir en Twitter compartir en Blogger compartir como código embebido compartir la url
Existen tres tipos de excepciones usuales, las cuales se agrupan en las relacionadas con tipos de datos, las relacionadas con tipos de datos y las relacionadas con cursores.

  • Relacionadas con tipos de datos (
    INVALID_NUMBER, VALUE_ERROR, ZERO_DIVIDE)
  • Relacionadas con operaciones de SQL (DUP_VAL_ON_INDEX, NO_DATA_FOUND, TOO_MANY_ROWS)
  • Relacionadas con Cursores (CURSOR_ALREADY_OPEN, INVALID_CURSOR)

  • Tipos de Excepciones


    Excepción Descripción Instrucciones de manejo
    Errores Predefinidos de Oracle. Errores que ocurren con frecuencia en PL/SQL. No hay necesidad de declarar esta excepciones. Son predefinidas por Oracle y se levantan de forma implicita.
    Errores No-Predefinidos de Oracle. Cualquier otro error estándar del servidor de Oracle. Es necesario declararlos dentro de la parte declarativa; el servidor Oracle levanta el error de forma implícita, y luego puedes capturarlo en el controlador de excepciones.
    Errores definidos por e usuario. X condición que el programador entiende como anormal. Deben ser declarados y levantados de forma explicita.
    Nota:
    Algunas herramientas/aplicaciónes que interactuan con la Base de Dato Oracle (como Oracle Developer Forms) tienen sus propias excepciones.

    AGRADECIMIENTOS:
    https://magicplsql.blogspot.com/2016/10/manejo-de-excepciones.html

    
        --
    BEGIN
        ...
        NUM := 1;
        DEN := 0;
        VALOR := NUM / DEN;
        ...
    EXCEPTION
        WHEN ZERO_DIVIDE THEN
            -- Instrucciones
            ...
    END;
    
    


    
    -----------------------------------------------------------------------
    -- Excepción definida por el usuario
    -----------------------------------------------------------------------
    
    
    


    
    -----------------------------------------------------------------------
    -- Excepciones sólo internas del sistema
    -----------------------------------------------------------------------
    
    
    



    
    
    
    


    Imagen 1. Manejo de excepciones prioridad alta

    Manejo de excepciones prioridad alta

    Imagen 1. Manejo de excepciones prioridad media

    Manejo de excepciones prioridad media






    Si este contenido te fue útil, no olvides compartirlo en redes sociales, Considéralo. Puede ser la manera de agradecer!


    Agrega tu comentario...

    Puedes utilizar etiquetas <pre></pre>, <p></p>, <div></div>, + (Nombre usuario, para responderle a alguien)

    ziS0u9n





    Este post no tiene comentarios, sé el primero en hacerlo
    Esta entrada no cuenta con imágenes adjuntas

    Unete al grupo de whatsApp +57 316 392 6456

    Sigue el grupo en facebook

    Siguenos.....