Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 31-05-2006
JCDiaz999 JCDiaz999 is offline
Registrado
 
Registrado: sep 2005
Posts: 4
Poder: 0
JCDiaz999 Va por buen camino
Hola joanajj

Supongo que te refieres a controlar errores en procedimientos almacenados.
Yo tengo en algún procedimiento algo como esto:



Código SQL [-]
FOR SELECT CODIGO, CAMPO1, CAMPO2
FROM INTERFAZ_DATOS
WHERE TRATADO='N'
INTO S_CODIGO, S_CAMPO1, S_CAMPO2 DO
BEGIN
INSERT INTO TABLA_XXX ....
----

UPDATE INTERFAZ_DATOS
SET TRATADO='S'
WHERE CODIGO=S_CODIGO

WHEN ANY DO
BEGIN
INSERT INTO LOG_ERRORES -----
END
END






Este bucle recorre registros de la tabla INTERFAZ_DATOS, va insertando en TABLA_XXX y marca el registro actual como ya tratado.
Si en el insert se produce alguna excepción, salta al WHEN ANY sin pasar por el update. Se inserta en LOG_ERRORES y continua el bucle.
De este modo podemos recorrer todo el bucle. Donde se produzca algún error podemos hacer algo distinto.

Supongo que además te interesará actuar de distinto modo si en error es de primary key, de foreign key, tipo de dato. No lo he probado aún, pero mirando en la documentación de firebird aparecen cosas como:


<FONT face=Courier><FONT size=2><DIV class=frame_codigo_sql>Código SQL [-]<DIV class=texto_codigo_sql id=sql_div_447dcf379d02e><FONT face=Courier>
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Errores en tablas firebird vlinares Conexión con bases de datos 0 17-03-2005 09:25:50
Control y captura de errores in acceso BBDD Interbasse con ibExpress radiohead Conexión con bases de datos 1 05-11-2004 11:13:22
Control de errores Sql MITOPE Conexión con bases de datos 3 23-07-2004 10:48:49
Control de errores y saber filas en DBGrid RyAr Conexión con bases de datos 6 08-07-2004 13:57:55
Control de errores en bd Isaac Varios 5 17-02-2004 19:19:34


La franja horaria es GMT +2. Ahora son las 15:47:19.


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