Red de conocimiento informático - Aprendizaje de programación - Cómo obtiene Oracle información de excepción

Cómo obtiene Oracle información de excepción

A través del siguiente código:

public static String getExceptionAllinformation(Exception ex){

String sOut = "";

StackTraceElement[ ] trace = ex.getStackTrace();

for (StackTraceElement s : trace) {

sOut += "\tat " + s + "\r\n";

}

return sOut; }

Extensión: .

Nota

procedimiento almacenado de Oracle, puede obtenerlo a través de sqlcode Código de excepción, obtenga información de excepción a través de sqlerrm.

Ejemplo:

Crear o reemplazar el procedimiento almacenado write2blob(p_id en número, --id

p_blob_data en blob,

p_msg ? out varchar2) --data

es

v_lobloc blob; --target blob

v_blob_data blob --ield para aceptar parámetros, las variables de parámetros no pueden. t ser utilizado para asignación directa

v_amount binario_integer; --longitud total

v_amount en número, --id

p_blob_data en blob,

p_msg ?--Longitud total

v_sub_length binario entero; --La longitud máxima de una lectura, no más de 32766

v_sub_blob ?

v_offset binario entero; -- Cursor

v_err_msg varchar2(1000); ?

v_id binario_integer -- ID del registro que se va a modificar o agregar

v_temp ? binario_integer; variable temporal, utilizada para determinar si el registro correspondiente a v_id ha comenzado

v_amount := length(p_blob_data);

v_blob_data ? := p_blob_data;

v_sub_length := 32767;

v_offset := 1;

v_id := p_id;

v_temp : = 0 ?--Ejecutar v_query_string en v_lobloc inmediatamente;

Seleccione count(1) en v_temp desde donde id = v_id ?--Consulte si hay un registro correspondiente a v_id y asigne el valor; v_te /*Nota: ya sea que esté modificando o agregando nuevos registros, debe usar vacío_blob() para inicializar el campo del blob; de lo contrario, el contenido del blob posterior no se escribirá en la tabla.