Bloquear registro

17/05/2007 - 17:26 por Nahuel Garcia | Informe spam
En definitiva necesito Bloquear un registro, no me sirve toda la tabla.
Puedo hacerlo? Intente con update pero me bloquea la tabla entera

Preguntas similare

Leer las respuestas

#1 Maxi
17/05/2007 - 19:53 | Informe spam
Hola, porque necesitas hacer eso, SQL lo hace por ti, que proceso estas
queriendo hacer que necesitas hacer esto


Salu2

Microsoft MVP SQL Server
Culminis Speaker

"Nahuel Garcia" escribió en el mensaje
news:

En definitiva necesito Bloquear un registro, no me sirve toda la tabla.
Puedo hacerlo? Intente con update pero me bloquea la tabla entera


Respuesta Responder a este mensaje
#2 Nahuel Garcia
17/05/2007 - 20:08 | Informe spam
Tengo unos lotes en los que se ingresan asientos y tengo un registro que
quiero capturarlo y si no puedo (porque ya esta capturado por otra terminal)
no dejo ingresar al lote. Te preguntarás, porque no bloquear la tabla donde
tengo el lote, bueno yo me pregunto lo mismo. Lamentablemente las directivas
son claras.
Saludos


"Maxi" escribió en el mensaje
news:
Hola, porque necesitas hacer eso, SQL lo hace por ti, que proceso estas
queriendo hacer que necesitas hacer esto


Salu2

Microsoft MVP SQL Server
Culminis Speaker

"Nahuel Garcia" escribió en el mensaje
news:

En definitiva necesito Bloquear un registro, no me sirve toda la tabla.
Puedo hacerlo? Intente con update pero me bloquea la tabla entera






Respuesta Responder a este mensaje
#3 Gustavo Larriera (MVP)
17/05/2007 - 20:33 | Informe spam
Si bien no termino de entender todos los detalles de tu escenario, tal vez lo
que te puede servir es que tu aplicación que captura el registro juegue con
el SET ISOLATION.

Tal vez te sirva leer datos sucios, pero es una hipótesis mía simplemente :-)

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/p...o.Larriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Nahuel Garcia" wrote:

Tengo unos lotes en los que se ingresan asientos y tengo un registro que
quiero capturarlo y si no puedo (porque ya esta capturado por otra terminal)
no dejo ingresar al lote. Te preguntarás, porque no bloquear la tabla donde
tengo el lote, bueno yo me pregunto lo mismo. Lamentablemente las directivas
son claras.
Saludos


"Maxi" escribió en el mensaje
news:
> Hola, porque necesitas hacer eso, SQL lo hace por ti, que proceso estas
> queriendo hacer que necesitas hacer esto
>
>
> Salu2
>
> Microsoft MVP SQL Server
> Culminis Speaker
>
> "Nahuel Garcia" escribió en el mensaje
> news:
>>
>> En definitiva necesito Bloquear un registro, no me sirve toda la tabla.
>> Puedo hacerlo? Intente con update pero me bloquea la tabla entera
>>
>>
>
>



Respuesta Responder a este mensaje
#4 Jose Mariano Alvarez
18/05/2007 - 02:49 | Informe spam
En el post ,
DIJO .

Si bien no termino de entender todos los detalles de tu escenario, tal vez lo
que te puede servir es que tu aplicación que captura el registro juegue con
el SET ISOLATION.






Coincido con Gux. Y agregaria que revises en la ayuda ROWLOCK en
"Locking Hints"

Sin embargo me parece que lo que estas tratando de hacer no tiene ningun
sentido. SQL Server no es una base ISAM en la cual se debe controlar los
bloqueos de registros, respeta las propiedades ACID las cuales se
controlan pero no a bajo nivel sino a un nivel mas alto.

http://es.wikipedia.org/wiki/ACID





Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)


IMPORTANTE

Por favor traten de indicar la versión de SQL y Service Pack.
La inclusión de (CREATE, INSERTS, etc.) para poder reproducir el
problema también ayuda.
Respuesta Responder a este mensaje
#5 Jesús López
25/05/2007 - 09:23 | Informe spam
SQL Server no bloquea la tabla entera si lo puede evitar, y normalmente lo
puede evitar si tiene índices.

Por ejemplo esta tabla:

CREATE TABLE T1( Id int PRIMARY KEY, Campo varchar(50)

Esta tabla tiene un índice sobre Id ya que es la clave primaria.

Si hacemos esto:



BEGIN TRANSACTION
UPDATE T1 SET Id = 20 WHERE Id = 20
permanecerá bloqueado mientras dure la transacción



COMMIT o ROLLBACK

Saludos:

Jesús López







"Nahuel Garcia" escribió en el mensaje
news:

En definitiva necesito Bloquear un registro, no me sirve toda la tabla.
Puedo hacerlo? Intente con update pero me bloquea la tabla entera


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida