Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Recoger errores SQL (https://www.clubdelphi.com/foros/showthread.php?t=10729)

ronson 27-05-2004 12:15:21

Recoger errores SQL
 
Hola,
decir que estoy empezando a programar una BD con Firebird y me gustaría saber como recoger un error al insertar en la BD desde un procedimiento almacenado.
Es decir, si al insertar un registro un capo lo dejo a NULL cuando no puede ser, quiero poder manejarlo.

El código que estoy utilizando es el siguiente:

INSERT INTO FACTURAS (NUMERO, ANNO, FECHA, CLIENTE, BASE_IMP, IVA, TOTAL, DESCUENTO, COBRADA)
VALUES (:eNUMERO, :eANNO, :eFECHA, :eCLIENTE, :eBASE_IMP, :eIVA, :eTOTAL, :eDESCUENTO, :eCOBRADA);
SERROR = gdscode;
SUSPEND;
WHEN ANY DO
BEGIN
SRESULTADO = 0;
STEXTO = 'Error al insertar factura';
END



Pero, para empezar el precompilador me da un error con GDSCODE o SQLCODE, cuando tengo entendido que es donde se guarda el resultado del INSERT.

Por otra parte, sea cual sea el error al insertar, nunca entra en WHEN ANY, cuando supuestamente recoge cualquier tipo de error.

¿Alguien me puede decir como manejar estos errores dentro del procedimiento almacenado?

Muchas gracias.

jachguate 27-05-2004 18:09:05

Hilo movido a Interbase/Firebird desde SQL debido a que se trata de un asunto específico de este motor.

Hasta luego.

;)


La franja horaria es GMT +2. Ahora son las 04:32:12.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi