Resolver bolqueo

02/05/2005 - 21:34 por Daniel Durand | Informe spam
Buenas tardes a todos

Planteo la pregunta aquí ya que en el foro de mi lenguaje no obtuve
respuesta. Lo único que tendran que perdonar si no me expreso bien por que
no conozaco muy bien el vocabulario que hay que utilizar en SQL Server,
trataré de hacer la pregunta desde este punto de vista.

Tengo una situación de bloque de registro y necesito que me aconsejen a
resolver o prevenir el bloqueo.

La situación de bloque se produce cuando ...

Estamos dentro de una transacción en donde tengo que hacer un bucle dentro
de una tabla (1º tabla) para que en cada ciclo haga una consulta (SELECT) y
luego una actualización (UPDATE) de la segunda tabla (2º tabla) en realción
a un campo de la 1º tabla.

El conflicto de bloqueo se da cuando tengo que leer el registro de la 2º
tabla que ya fué actualizada.

El administrador corporativo me confirma el bloqueo.

Supongo que este respuesta de SQL Server es normal, me gustaría saber como
prevenir esta situación, posiblemente sea cuestion de habilitar un comando
al proceso o quizas sea una cuestion de técnica de programación.
Desde el punto de vista de la aplicación el sistema se bloqueo y queda
colgado.


Gracias
espero sus comentarios.
 

Leer las respuestas

#1 Alejandro Mesa
02/05/2005 - 21:48 | Informe spam
Daniel,

Supongo que este respuesta de SQL Server es normal, me gustaría saber como
prevenir esta situación, posiblemente sea cuestion de habilitar un comando
al proceso o quizas sea una cuestion de técnica de programación.
Desde el punto de vista de la aplicación el sistema se bloqueo y queda
colgado.



1 - Buscar una solucion basada en conjuntos (UPDATE ...) y no en cursores o
bucles.
2 - Mantener las transacciones lo mas corta posible para no bloquear otros
clientes (no hacer bucles dentro de una transaccion)

Si puedes exponer que es lo que tratas de hacer, posiblemente alguien
pudiera recomendarte una solucion basada en conjuntos.


AMB

"Daniel Durand" wrote:

Buenas tardes a todos

Planteo la pregunta aquí ya que en el foro de mi lenguaje no obtuve
respuesta. Lo único que tendran que perdonar si no me expreso bien por que
no conozaco muy bien el vocabulario que hay que utilizar en SQL Server,
trataré de hacer la pregunta desde este punto de vista.

Tengo una situación de bloque de registro y necesito que me aconsejen a
resolver o prevenir el bloqueo.

La situación de bloque se produce cuando ...

Estamos dentro de una transacción en donde tengo que hacer un bucle dentro
de una tabla (1º tabla) para que en cada ciclo haga una consulta (SELECT) y
luego una actualización (UPDATE) de la segunda tabla (2º tabla) en realción
a un campo de la 1º tabla.

El conflicto de bloqueo se da cuando tengo que leer el registro de la 2º
tabla que ya fué actualizada.

El administrador corporativo me confirma el bloqueo.

Supongo que este respuesta de SQL Server es normal, me gustaría saber como
prevenir esta situación, posiblemente sea cuestion de habilitar un comando
al proceso o quizas sea una cuestion de técnica de programación.
Desde el punto de vista de la aplicación el sistema se bloqueo y queda
colgado.


Gracias
espero sus comentarios.






Preguntas similares