Bloquear registros

13/08/2004 - 14:40 por Melissa Ruiz | Informe spam
Hola amigos,
Soy nueva en el foro.
Estoy empezando a aprender SQL server desarrollando una aplicacion en Visual
Foxpro 8.0 con base de datos sql server 2000.

Mi primera inquietud es que en un proceso guardo en una variable el valor de
un campo de una tabla, luego recorro otra tabla, hago unos calculos y
actualizo el campo del valor guardado previamente de la primera tabla.
Lo malo es que necesito que mientras dura el proceso de recorrer la otra
tabla y calcular, que puede durar unos segundos segun las pruebas, ningun
usuario debe de estar modificandome el valor del campo de la primera tabla.

Para los que conocen algo de Visual Fox lo que quiero es simplemente simular
un RLOCK() es decir bloquear el registro para que nadie me lo pueda
modificar hasta que yo lo libere.

Como se puede hacer eso en SQL Server ??? o en su defecto como maneja sql
server la concurrencia.

Entiendan que no se casi nada de sql server.

Gracias amigos

Melissa

Preguntas similare

Leer las respuestas

#11 Melissa Ruiz
15/08/2004 - 04:38 | Informe spam
Realmente me refería a bloqueo de modificación no de lectura. Sin embargo,
es valiosa la información adicional que nos han dado.

Gracias de nuevo por sus aportes tan valiosos, amigos.




"ulises" wrote in message
news:
On 14 Aug 2004 07:14:20 -0700, (el emperador)
wrote:

>"ulises" wrote in message


news:<60a001c48189$03986c40$...
>> El UPDLOCK no impide la lectura del registro y que en base
>
>¿Y eso que tiene que ver con el hilo?, si vuelves a leer detenidamente
>el contenido del mensaje inicial lo que se quiere es que otros
>procesos no puedan modificar el valor, en ningún momento se dice que
>no puedan leerlo, sólo se pide como impedir que otro proceso lo
>modifique después de ser leido.

He vuelto a leer el hilo de mensajes y no encontré tal cosa ya que lo
que he respondido es la réplica que haces a Miguel sobre su afirmación
de que no hay bloqueos por lecturas ... en todo caso si afirmas que tu
intención era responder directamente al mensaje inicial no tomes en
consideración mi mensaje :)

>
>> a ello se tomen ciertas acciones que podr an dar
>> resultados incorrectos. Por ejemplo :
>
>Estás haciendo suposiciones, casos hipotéticos que no vienen al tema.
>Como dice Date también puede pasar que los aviones se caigan y lo
>puentes se derrumben.

¿? no sé a que viene ese tema, pero en todo caso no pienso que los
aviones se caigan o que los puentes se derrumben sean temas
hipóteticos sino bien reales y te aseguro que los responsables hacen
todo lo posible (inclusive planteandose situaciones poco probables)
para que eso no ocurra.

>Un saludo.

Igualmente,
Ulises
Respuesta Responder a este mensaje
#12 1492a2001
15/08/2004 - 11:53 | Informe spam
ulises wrote in message news:...
On 14 Aug 2004 07:14:20 -0700, (el emperador)
wrote:

>"ulises" wrote in message news:<60a001c48189$03986c40$...
>> El UPDLOCK no impide la lectura del registro y que en base
>
>¿Y eso que tiene que ver con el hilo?, si vuelves a leer detenidamente
>el contenido del mensaje inicial lo que se quiere es que otros
>procesos no puedan modificar el valor, en ningún momento se dice que
>no puedan leerlo, sólo se pide como impedir que otro proceso lo
>modifique después de ser leido.

He vuelto a leer el hilo de mensajes y no encontré tal cosa ya que lo
que he respondido es la réplica que haces a Miguel sobre su afirmación
de que no hay bloqueos por lecturas ... en todo caso si afirmas que tu
intención era responder directamente al mensaje inicial no tomes en
consideración mi mensaje :)



Ahí tienes razón, he mezclado los dos mensajes y así me ha salido la respuesta :-D.

Un saludo.
Respuesta Responder a este mensaje
#13 Miguel Egea
18/08/2004 - 18:58 | Informe spam
Bueno, yo me voy a puntualizar a mi mismo, no hay bloqueos exclusivos por
lecturas ...

Lo que propone nuestro amigo emperador es válido, aunque si el propósito es
el inicial que manifiesta melisa ( a partir del contenido de una tabla
actualizar otra) yo le recomendaría que se olvidase de los cursores y de los
bloqueos a nivel de fila (que es lo que en realidad quería aconsejar)

Nos leemos!!!

-
Miguel Egea Gómez
Microsoft SQL-Server MVP
Webmaster de PortalSql.Com
¿Te interesa participar en las reuniones
del grupo de Usuarios de SQL-Server y .NET
Se harán en levante de España, (Alicante o Murcia)?




"el emperador" escribió en el mensaje
news:
ulises wrote in message


news:...
> On 14 Aug 2004 07:14:20 -0700, (el emperador)
> wrote:
>
> >"ulises" wrote in message


news:<60a001c48189$03986c40$...
> >> El UPDLOCK no impide la lectura del registro y que en base
> >
> >¿Y eso que tiene que ver con el hilo?, si vuelves a leer detenidamente
> >el contenido del mensaje inicial lo que se quiere es que otros
> >procesos no puedan modificar el valor, en ningún momento se dice que
> >no puedan leerlo, sólo se pide como impedir que otro proceso lo
> >modifique después de ser leido.
>
> He vuelto a leer el hilo de mensajes y no encontré tal cosa ya que lo
> que he respondido es la réplica que haces a Miguel sobre su afirmación
> de que no hay bloqueos por lecturas ... en todo caso si afirmas que tu
> intención era responder directamente al mensaje inicial no tomes en
> consideración mi mensaje :)

Ahí tienes razón, he mezclado los dos mensajes y así me ha salido la


respuesta :-D.

Un saludo.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida