Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-10-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
deadlock update

Hola amigos del foro :

Alguien me podría decir como evitar que me aperezca este mensaje
"deadlock update conflicts with concurrent update ", lo que pasa es que tengo mi base de datos en Red y me esta apareciendo este mensaje...bueno, muchas gracias por su ayuda..
Responder Con Cita
  #2  
Antiguo 25-10-2007
afxe afxe is offline
Miembro
 
Registrado: jul 2004
Ubicación: Malaga-España
Posts: 273
Poder: 20
afxe Va por buen camino
Chequea los triggers.

Los deadlock (anillos de la muerte) se producen normalmente (posiblemente haya más motivos, no soy un guru) cuando el trigger de una tabla A repercute sobre una tabla B, cuyos trigger directa o indirectamente vuelven a modificar la tabla A, es decir, haciendo referencia a ésta o modificando otras tablas que hagan modificaciones sobre la tabla A. Cuando la base de datos tiene una tabla en modo Update (haciendo los triggers before y after update correspondiente) y le llega una petición de modificación de esa tabla en la misma transacción obtienes un bonito mensaje de "deadlock". También se puede producir por triggers DELETE e INSERT.

Cuando son por recursión son muy difíciles de detectar, así que suerte.

Saludos.
Responder Con Cita
  #3  
Antiguo 26-10-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
Question Gracias..

Gracias por tu ayuda.. lo que pasa es que esto sucede cuando se quiere actualizar un registro que no existe o se quiere ingresar un registro que ya existe( osea, me refiero a un registro unico ), entonces la idea es saber si existe alguna propiedad del Componente IBDataBase, que omita este mensaje o que no haga nada en el caso de q' ocurra esto.
Responder Con Cita
  #4  
Antiguo 26-10-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
Amigos..en que componente puedo indicar que no quiero que me aparezca dicho mensaje, o que no realice ninguna acción?..en el componente IBTransaction o en el Componente IBDataBase..lo que para es que no quiero capturar la excepcion por que tengo muchos formularios..gracias de ante mano.
Responder Con Cita
  #5  
Antiguo 01-11-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
aun con el problemita.... Cualquier aporte se los agradecera muchos..
Responder Con Cita
  #6  
Antiguo 01-11-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Bueno, esto debe ser un problema de concurrencia, quizá alguien esta tratando de modificar un registro de una tabla, cuando dicho registro esta bloqueado por otra trasacción... yo creo que deberias plantearte una cuestión como la siguiente:

¿Realmente necesito que las dos personas modifiquen el mismo registro o es un error de diseño?

Si necesitas que ambos modifiquen el mismo registro, pues ten en cuenta que el error te esta ayudando a idenficar el momento en que esto no es posible y podrias capturarlo para mostrar un mensaje mas diciente al usuario final.

Si no es asi y definitivamente esto no deberia estar sucediendo, busca la manera de que estos dos registros no "choquen", creando algun campo que los diferencie, como por ejemplo "usuario_actual" o algo por el estilo , ¿Me hice entender?, espero que si y que ademas te sirva de algo .
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #7  
Antiguo 01-11-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Poder: 19
BuenaOnda Va por buen camino
muchas gracias jhonny, voy tener en cuanta tu consejo...
Responder Con Cita
Respuesta



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
deadlock en unas maquinas pero no en otras ??? DobleSiete Conexión con bases de datos 6 01-06-2005 14:12:58
DeadLock jgutti Firebird e Interbase 3 05-01-2005 07:03:15
deadlock ¿esto q es? chele Varios 2 13-10-2004 12:14:57
deadlock scooterjgm Conexión con bases de datos 3 24-09-2004 18:49:32
A DeadLock was Detected jafl1965 SQL 4 16-10-2003 15:33:44


La franja horaria es GMT +2. Ahora son las 16:34:55.


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
Copyright 1996-2007 Club Delphi