Ver Mensaje Individual
  #7 (permalink)  
Antiguo 29/09/2010, 13:46
Avatar de gustavoh10
gustavoh10
 
Fecha de Ingreso: diciembre-2005
Ubicación: ARGENTINA
Mensajes: 196
Antigüedad: 18 años, 4 meses
Puntos: 3
Respuesta: Loqueos datos select (SQL 2008)

Hasta donde entiendo no creo que tenga lecturas sucias.

te paso una porción del código, igual ya me di cuenta que lo encaré mal al problema y no creo que me sirva la solución que encontré

Primer select de la transacción
Código:
SELECT * FROM TABLATEMPORAL WITH 
WHERE ORIGEN = 1
AND SUCUR = 6
AND DEPTO = 135
los datos que yo tengo en este select, quiero que queden bloqueados hasta que termine la transacción.

Paso a explicar con mas detalle.

Básicamente esta es una tabla temporal que almacena datos ya calculados.

Cuando se ejecuta la primera vez, el programa partiendo de un dato, busca si este tiene relaciones ascendente o descendentes e inserta los registros en la tabla temporal.

Luego de terminar el select se hace una comparación entre esta tabla (temporal) y otra tabla (originadora), si se encuentra una diferencia en el campo de fecha de modificación, para ese registro se disparan muchos select que buscan relaciones en otras tablas (relaciones ascendentes y descendentes).

Entonces creeamos esta tabla temporal para agilizar los tiempos de respuesta ya que buscamos sola las relaciones de los registros que cambian.

El problema se da si dos usuarios al mismo tiempo ejecutan el mismo programa, tenemos un problema que se duplican los registros en la tabla temporal (solo cuando se ejecuta la primera vez)

Entonces se me ocurrio mantener bloquada la tabla temporal hasta que termine la transacción que la crea la primera vez (que se cargar todos los registros).

Una vez que esta creada esta tabla, ya no es tanto problema, se actualizan los datos necesarios, y si se corren 2 o 3 vences al mismo tiempo no es problema.

El problema es que no puede hacer un bloqueo de los registos del select que puse en el comienzo.

Perdón si en el primer post no me explique como debia.

Gracias por tus comentarios.




Cita:
Iniciado por iislas Ver Mensaje
Muestranos tu codigo....

Aunque por lo visto, tendrias "lecturas sucias".