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 Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 03-11-2006
tefots tefots is offline
Miembro
 
Registrado: feb 2005
Posts: 108
Poder: 22
tefots Va por buen camino
el problema está que en la tabla de lineas , tienes una referencia a la tabla cabecera y el 'ondelete cascade' como regla en la clave ajena.
este 'ondelete cascade' se ejecuta por defecto cuando has borrado el registro (after delete) , con lo que cuando se borra algun registro de la cabecera y desde un triger en en el delete de las lineas intentas acceder a la cabecera , esta ya no existe.

la solucion está en modificar este trigger de la tabla lineas (aunque realmente se ejecutacuando en el after delete de la cabecera) que genera firebird automáticamente y pasarlo de 'after delete' , a 'before delete' .

esto lo puedes hacer con ibexpert, entras en las dependencias de la tabla lineas , y verás que en triggers , tienes alguno que se llama checkxx , ( si tienes varios has de buscar el que hace referencia al campo que enlaza con la tabla cabecera) y cambiar la regla , de after a before.


Tambien puedes hacerlo de otra forma mas facil , quitas el 'ondelete' automatico , y crear tu manualmente el trigger en la cabecera , para que en el before delete de la cabecera , elimine las lineas.

es un poco lioso , pero espero haberlo aclarado.

saludos.

Última edición por tefots fecha: 03-11-2006 a las 15:00:42.
Responder Con Cita
 



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
Ocultar código de Stored Procedures y Triggers en FireBird... jncrls Firebird e Interbase 4 08-01-2007 16:51:52
efecto disparo de los juegos edusus Varios 15 19-04-2006 03:10:12
Firebird 1.0.3 -- Recusividad de Triggers y Procedimientos Almacenados jverasobino Firebird e Interbase 1 27-12-2004 18:00:58
Problemas Triggers Firebird ISCOPYME Firebird e Interbase 2 29-06-2004 22:05:12
[Firebird 1.5] DSQL en procedimientos almacenados y triggers kinobi Firebird e Interbase 0 06-08-2003 20:50:27


La franja horaria es GMT +2. Ahora son las 20:59:23.


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