Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Applyupdates me bloquea la aplicación (https://www.clubdelphi.com/foros/showthread.php?t=44129)

jmlifi 29-05-2007 10:26:02

Applyupdates me bloquea la aplicación
 
Problemas con applyupdates
Buenas,

Uso Firebird 2.0.1, delphi2006 y dbexpress.

Utilizo TSQLquery , un provider y un clientdataset. En el query indico los campos claves y el provider lo tengo a upwherekeyOnly. El campo cliente y refversion ProviderFlags(pfInUpdate=false,pfInWhere=false)

la select:

SELECT REF_C, REF_N, TIPOM, TCORTE, PU, FECHA, LARGO, ANCHO,
PESO, TRATMTO, NOTAS, TRABEXTERNO,CODCLIENTE,TIPO,
PERIMETRO, Clientes.Nom Cliente, VTRATMTO, PUPROPUESTO,
VMAT,VCORTE,DENOMINACION,TTRATMTOS,TIPOGEOMETRIA,
C_VR,REF_C||' '||C_VR REFVERSION, DEOFERTA
FROM PIEZAS Piezas
Inner join Clientes on Piezas.CodCliente=Clientes.Codigo
where ref_n=:ref_n

El bloqueo se produce en:

Código Delphi [-]
if ClientDataset.Applyupdates(0)=0 then

Nota: El bloqueo no se produce siempre, depende de :ref_n.
¿a qué es debido? Parando el motor firebird y si lo vuelvo a arrancar todo va bien. Si no paro el motor, el bloqueo se transmite a otros forms de la aplicación. Al día tengo que reiniciar el motor 2-3 veces

Neftali [Germán.Estévez] 29-05-2007 11:16:09

¿No será problema de transacciones? ¿Deadlock?

jmlifi 29-05-2007 11:54:56

No me muestra ningún mensaje referente a DeadLock.
Cómo podría evitar el deadLock? ( sólo se modifica un registro )

Neftali [Germán.Estévez] 29-05-2007 14:08:24

Normalmente pasado un tiempo de bloqueo, la aplicación debería darte un error de tiempo de espera.
¿Puede ser que se te esté quedando a tí o a otpo programa/ordenador alguna transacción abierta sobre esa tabla?

jmlifi 29-05-2007 14:37:45

Desde otro equipo modifico otro registro de la misma tabla y va bien.

Por curiosidad, tiene algo que ver el Dialecto utilizado?


La franja horaria es GMT +2. Ahora son las 11:50:34.

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