hacer lock de tablas de una BD (no permitir modificaciones)

02/12/2005 - 20:47 por Juan Carlos | Informe spam
Hola:

Para una aplicación con la que se hacen modificaciones en una base de datos
preciso bloquear ciertas tablas para que no sea posible hacer modificaciones
(si lecturas) en esas tablas (en principio) por ningún medio. No me importa
que el bloqueo sea largo ya que es un proceso especial.
Lo que querría entonces es bloquear las modificaciones en algunas tablas.

No se cual es la mejor forma de hacer esto. Por ahi aparece algo de
"application locks" en SQL server. Es la forma de hacerlo desde una
aplicación cuando una operación puede llevarme minutos (o hasta una hora)
por ejemplo?
Existe alguna otra forma facil de hacerlo?

Gracias,
Juan Carlos

Preguntas similare

Leer las respuestas

#1 Isaias
02/12/2005 - 23:10 | Informe spam
No te funciona:

SERIALIZABLE

Se establece un bloqueo de intervalo en el conjunto de datos, lo que impide
que otros usuarios actualicen o inserten filas en el conjunto de datos hasta
que finalice la transacción. Es el más restrictivo de los cuatro niveles de
aislamiento. Al ser menor la simultaneidad, sólo se debe utilizar esta opción
cuando sea necesario. Esta opción tiene el mismo efecto que establecer
HOLDLOCK en todas las tablas y en todas las instrucciones SELECT de la
transacción.



Saludos
IIslas


"Juan Carlos" escribió:

Hola:

Para una aplicación con la que se hacen modificaciones en una base de datos
preciso bloquear ciertas tablas para que no sea posible hacer modificaciones
(si lecturas) en esas tablas (en principio) por ningún medio. No me importa
que el bloqueo sea largo ya que es un proceso especial.
Lo que querría entonces es bloquear las modificaciones en algunas tablas.

No se cual es la mejor forma de hacer esto. Por ahi aparece algo de
"application locks" en SQL server. Es la forma de hacerlo desde una
aplicación cuando una operación puede llevarme minutos (o hasta una hora)
por ejemplo?
Existe alguna otra forma facil de hacerlo?

Gracias,
Juan Carlos



Respuesta Responder a este mensaje
#2 Gustavo Larriera [MVP]
03/12/2005 - 03:38 | Informe spam
ALTER DATABASE ... SET READ_ONLY

Gustavo Larriera
Uruguay LatAm
Blog: http://sqljunkies.com/weblog/gux/
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Juan Carlos" wrote in message
news:
Hola:

Para una aplicación con la que se hacen modificaciones en una base de
datos preciso bloquear ciertas tablas para que no sea posible hacer
modificaciones (si lecturas) en esas tablas (en principio) por ningún
medio. No me importa que el bloqueo sea largo ya que es un proceso
especial.
Lo que querría entonces es bloquear las modificaciones en algunas tablas.

No se cual es la mejor forma de hacer esto. Por ahi aparece algo de
"application locks" en SQL server. Es la forma de hacerlo desde una
aplicación cuando una operación puede llevarme minutos (o hasta una hora)
por ejemplo?
Existe alguna otra forma facil de hacerlo?

Gracias,
Juan Carlos


Respuesta Responder a este mensaje
#3 Juan Carlos
08/12/2005 - 13:45 | Informe spam
Gracias gustavo.

El tema es que SI quiero actualizar otras tablas de la misma BD. En la
"ALTER TABLE" no encontré algo similar.
Qué puedo hacer?

Gracias,
Juan Carlos


"Gustavo Larriera [MVP]" escribió en el mensaje
news:%
ALTER DATABASE ... SET READ_ONLY

Gustavo Larriera
Uruguay LatAm
Blog: http://sqljunkies.com/weblog/gux/
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Juan Carlos" wrote in message
news:
Hola:

Para una aplicación con la que se hacen modificaciones en una base de
datos preciso bloquear ciertas tablas para que no sea posible hacer
modificaciones (si lecturas) en esas tablas (en principio) por ningún
medio. No me importa que el bloqueo sea largo ya que es un proceso
especial.
Lo que querría entonces es bloquear las modificaciones en algunas tablas.

No se cual es la mejor forma de hacer esto. Por ahi aparece algo de
"application locks" en SQL server. Es la forma de hacerlo desde una
aplicación cuando una operación puede llevarme minutos (o hasta una hora)
por ejemplo?
Existe alguna otra forma facil de hacerlo?

Gracias,
Juan Carlos






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