Lograr el bloqueo de registro con mssql 7 o posterior
a través de programación y de Seguridad de Bloqueo de Registros en MSSQL 7
¿Cómo te gustaría ser capaz de determinar si un registro ha sido bloqueado en
MSSQL Server y no se que molesto 'Registro ha sido modificado por otro Usuario'
cuando finalmente tratar de publicar los cambios?
Hay un enfoque sencillo (muy fácil), pero tiene que ser implementado
a través de programación.
Este es el cómo.
Para cada registro que desea bloquear a este:
Crear una tabla temporal global que lleva el nombre de la tabla en la que el registro
es, junto con el Identificador Único de la tabla. Por ejemplo, si usted tiene un
tabla llamada clientes, con un único campo de id de llamada Uid y desea bloquear la
grabar con uid=14, crear la tabla con esta consulta:
& nbsp & nbsp Create table ##Customers14 (id int null)
Cuando se desea desbloquear el registro que se acaba de soltar la tabla:
& nbsp & nbsp Drop table ##Customers14
Ahora vamos a decir que otro usuario quiere utilizar el mismo registro. Su cliente programa
intenta crear la misma tabla temporal global, pero no con una excepción,
porque no hay dos tablas temporales globales pueden tener el mismo nombre. La trampa de la excepción
en un intento-a excepción de la cláusula y que son el hogar de forma gratuita.
CONSEJOS.
a)
& nbsp & nbsp Utilice esta opción únicamente para SQLServer 7 y anteriores. SQL 6.5 y a continuación tienen una forma terrible
& nbsp & nbsp de manejo Temprorary tablas que le da un montón de sobrecarga.
b)
& nbsp & nbsp Usted puede crear cualquier tipo de collumn en la tabla temporal, así que usted puede tener
& nbsp & nbsp info como lo vez que el registro estaba cerrado y por lo de usuario.
c)
& nbsp & nbsp Nunca use este procedimiento si hay una posibilidad de que alguien se olvide de su equipo
& nbsp & nbsp abierto en un registro de horas, y que está ubicado el equipo digamos 100 millas
& nbsp & nbsp del servidor!!!
d)
& nbsp & nbsp Si la conexión se pierde por digamos un error de aplicación, la tabla
& nbsp & nbsp automáticamente dejado caer por el Servidor SQL server.
e)
& nbsp & nbsp Si el equipo shutsdown por una falla eléctrica, el SQL Server espera sobre el
& nbsp & nbsp 15 minutos y luego quita la tabla temporal, o si el equipo se inicia de nuevo
& nbsp & nbsp de la mesa se cayó de forma automática.
f)
& nbsp & nbsp Si usted no quiere tener que manejar una excepción usted puede también comprobar la
& nbsp & nbsp existencia de la tabla Temporal en la base de datos Master.
Lograr el bloqueo de registro con mssql 7 o posterior
Lograr el bloqueo de registro con mssql 7 o posterior : Multi-millones de consejos para hacer su vida mas facil.
a traves de programacion y de Seguridad de Bloqueo de Registros en MSSQL 7
¿Como te gustaria ser capaz de determinar si un registro ha sido bloqueado en
MSSQL Server y no se que molesto 'Registro ha sido modificado por otro Usuario'
cuando finalmente tratar de publicar los cambios?
Hay un enfoque sencillo (muy facil), pero tiene que ser implementado
a traves de programacion.
Este es el como.
Para cada registro que desea bloquear a este:
Crear una tabla temporal global que lleva el nombre de la tabla en la que el registro
es, junto con el Identificador Unico de la tabla. Por ejemplo, si usted tiene un
tabla llamada clientes, con un unico campo de id de llamada Uid y desea bloquear la
grabar con uid=14, crear la tabla con esta consulta:
& nbsp & nbsp Create table ##Customers14 (id int null)
Cuando se desea desbloquear el registro que se acaba de soltar la tabla:
& nbsp & nbsp Drop table ##Customers14
Ahora vamos a decir que otro usuario quiere utilizar el mismo registro. Su cliente programa
intenta crear la misma tabla temporal global, pero no con una excepcion,
porque no hay dos tablas temporales globales pueden tener el mismo nombre. La trampa de la excepcion
en un intento-a excepcion de la clausula y que son el hogar de forma gratuita.
CONSEJOS.
a)
& nbsp & nbsp Utilice esta opcion unicamente para SQLServer 7 y anteriores. SQL 6.5 y a continuacion tienen una forma terrible
& nbsp & nbsp de manejo Temprorary tablas que le da un monton de sobrecarga.
b)
& nbsp & nbsp Usted puede crear cualquier tipo de collumn en la tabla temporal, asi que usted puede tener
& nbsp & nbsp info como lo vez que el registro estaba cerrado y por lo de usuario.
c)
& nbsp & nbsp Nunca use este procedimiento si hay una posibilidad de que alguien se olvide de su equipo
& nbsp & nbsp abierto en un registro de horas, y que esta ubicado el equipo digamos 100 millas
& nbsp & nbsp del servidor!!!
d)
& nbsp & nbsp Si la conexion se pierde por digamos un error de aplicacion, la tabla
& nbsp & nbsp automaticamente dejado caer por el Servidor SQL server.
e)
& nbsp & nbsp Si el equipo shutsdown por una falla electrica, el SQL Server espera sobre el
& nbsp & nbsp 15 minutos y luego quita la tabla temporal, o si el equipo se inicia de nuevo
& nbsp & nbsp de la mesa se cayo de forma automatica.
f)
& nbsp & nbsp Si usted no quiere tener que manejar una excepcion usted puede tambien comprobar la
& nbsp & nbsp existencia de la tabla Temporal en la base de datos Master.
Lograr el bloqueo de registro con mssql 7 o posterior
By Consejos Y Trucos
Lograr el bloqueo de registro con mssql 7 o posterior : Multi-millones de consejos para hacer su vida más fácil.