bloquear tabla
buenas compañeros del foro , tengo la la siguiete consulta :
utilizo delphi 7 y una base de datos sql server 2000 , lo que me gustaria saver es si hay alguna manera de bloquear una tabla mientras esta tabla esta en uso, demanera que espere aque si otro usuario trata de acceder a ella , esta transaccion espere a que la otra finalize para continuar con la otra ...:) |
Que tal,
Lo que creo que debes de revisar es el ISOLATION_LEVEL con el que trabajas, por ejemplo si utilizas READ_COMMITED, entonces estas asegurando que los datos que leas de las base son lo últimos. En un entorno de base de datos como el del SQL Server,Oracle, FB, etc. no tiene mucho sentido el concepto de "bloquear", como se conocia en las bases de datos desktop. Saludos |
estube viendo esto del los isolations level pere no se cual es el mas recomendable y si lo estoy utilizando bien:
este es el codigo que utilizo para guardar en una tabla , lo unico que algunas veces parece que se pegara la transaccion y cuando otra maquina ejecuta la consulta se torna muy lento ... no se si la implementacion esta correcta , que me aconsejan... |
¿Y por qué no utilizas las transacciones?
Yo tengo muchos usuarios concurrentes haciendo procesos críticos (sacando números de factura) y jamás he tenido problemas con este método. Lo único es que intento que las transacciones sean lo más pequeñas que sea posible. |
Hola, Proba con esta clausula en el select de la tabla que quieres bloquear
with (HOLDLOCK,XLOCK) . |
La franja horaria es GMT +2. Ahora son las 04:36:09. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi