Hominis tota vita nihil aliud quam ad mortem iter est.
[Toda la vida de los hombres no es más que un camino hacia la muerte]
Séneca

Correciones PL / SQL

Quitar las trazas

dbms_output.put_line(' El valor de la codigoSolicitud es      –> '  || codigoSolicitud );

La razón, es que el procedimiento puede ser llamado desde cualquier parte, Java, COBOL… y se haría un lío sobre dónde escribir las trazas. 

Manejo de cursores

Los cursores son útiles cuando las consultas devuelve más de un valor. Si únicamente devuelve uno es más eficiente utilizar el siguiente código para asignar los resultados a variables:

 

   SELECT codigoOrganismo, descripcionOrganismo

     INTO codigoOrganismoAUX, descripcionOrganismoAUX

     FROM tabla_organismos

    WHERE codigoSolicitud = codigoSolicitud;

Hacer commit !

Siempre utilizar al final del procedimiento commit, para no depender del autocommit = true;

COMMIT;

Tratamiento de las excepciones

Los códigos de errores entre -20.000 y 0 son internos de Oracle, así que debemos asignar uno menor que -20.000.

 

EXCEPTION

   WHEN OTHERS

   THEN

      ROLLBACK;

      raise_application_error (-20110,

        'Error ' || TO_CHAR (SQLCODE) || ': '

        || SQLERRM

        );

 Gracias a nuestra todopoderosa gurú por las correcciones a mis primeros pasos en PL / SQL.

También te puede interesar:

  • Fecha Actual Java Buenas, el problema es simple, necesitamos representar la fecha actual en Java, por ejemplo para imprimirla en la traza para determinar el tiempo que dura...
  • Mis primeros pasitos en PL/PSQL Esta mañana me surgió la necesidad de implementar un procedimiento en PL/PSQL. Gracias a la ayudita del Vélez, he podido hacer esto en una hora. ...

Dejanos tu Comentario

Nombre: (Requerido)

E-Mail: (Requerido)

Sitio WEB:

Comentario:

Comenta