Bloqueo de registros

27/07/2004 - 19:19 por afuster | Informe spam
Como puedo bloquear un registro de un atabla para que
nadie pueda acceder a el.

Preguntas similare

Leer las respuestas

#1 Pablo Fabian Savino
28/07/2004 - 09:53 | Informe spam
una tabla de Sql Server o Access?

Porque partamos de la base que NO se deben bloquear registros en una DB que
fuese de Sql Server (o cualquier servidor) , para eso esta el TimeStamp.

En realidad no deberia bloquearce un registro sea donde sea.se debe
buscar un metodo diferente si no quieres que nadie acceda.

Salute

"" wrote in
message news:50b401c473fd$e70cc370$
Como puedo bloquear un registro de un atabla para que
nadie pueda acceder a el.
Respuesta Responder a este mensaje
#2 Carlos Sacristan
28/07/2004 - 14:51 | Informe spam
No entiendo porqué dices eso, Pablo. Un bloqueo no es malo siempre que
se sepa cómo manejarlo. Otra cosa es que se abra una transacción y ésta esté
bloqueando muchos más recursos y por mucho más tiempo del deseable... ¿es a
eso a lo que te referías?

En todo caso, para bloquear un registro primeramente hay que saber de
qué motor de base de datos estamos hablando, pues cada uno tiene sus propias
técnicas


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Pablo Fabian Savino" escribió en el mensaje
news:
una tabla de Sql Server o Access?

Porque partamos de la base que NO se deben bloquear registros en una DB


que
fuese de Sql Server (o cualquier servidor) , para eso esta el TimeStamp.

En realidad no deberia bloquearce un registro sea donde sea.se


debe
buscar un metodo diferente si no quieres que nadie acceda.

Salute

"" wrote in
message news:50b401c473fd$e70cc370$
> Como puedo bloquear un registro de un atabla para que
> nadie pueda acceder a el.


Respuesta Responder a este mensaje
#3 Pablo Fabian Savino
29/07/2004 - 01:12 | Informe spam
Hola Carlos,

dije lo que dije de los bloqueos, porque realmente si
estas trabajando en una aplicacion Cliente/Servidor, se supone que no se
deben bloquear los registros, sino pasamos al ambito de no ser cliente
servidor porque a otros usuarios les estarias bloqueando un registro que
quiza deban utilizar y hasta que tu no lo desbloquees nadie hace nada,
entonces en este punto lo de cliente servidor murio.

No digo que esta mal, cada quien trabaja como mas comodo
le parezca, pero en mi caso jamas bloqueo nada y en cuanto a las
transacciones, como tu sabras se hacen rapido y ante cualquier error hacemos
el rollback y listo, en definitiva el server sigue atendiendo a
todos...claro, estamos habalndo de una aplicacion general,
quiero decir, si yo tendria que hacer algo muy grande, en principio usaria
un server con doble procesador que esto haria que se puedan ejecutar 2 SP al
mismo tiempo.

Aparte, los bloqueos muchas veces no bloquean solo ese
registro, sino que bloquean toda la pagina y esa pagina puede involucrar
varios registros y realmente a mi modo de ver, eso no es para nada saludable
je.

En fin, sera cuestion de gustos jejeje, lo que dije fue
en concepto de mi manera de trabajar, como ya sabemos en el foro todos
trabajamos diferentes jejejeje..y bueno, que cada quien trabaje
como mas a gusto se sienta, verdad?


Bueno, fin del discurso jejejeje
Saludos Carlos

Salute !!!!






"Carlos Sacristan" <csacristan ARROBA mvps.org> wrote in message
news:
No entiendo porqué dices eso, Pablo. Un bloqueo no es malo siempre que
se sepa cómo manejarlo. Otra cosa es que se abra una transacción y ésta


esté
bloqueando muchos más recursos y por mucho más tiempo del deseable... ¿es


a
eso a lo que te referías?

En todo caso, para bloquear un registro primeramente hay que saber de
qué motor de base de datos estamos hablando, pues cada uno tiene sus


propias
técnicas


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Pablo Fabian Savino" escribió en el mensaje
news:
> una tabla de Sql Server o Access?
>
> Porque partamos de la base que NO se deben bloquear registros en una DB
que
> fuese de Sql Server (o cualquier servidor) , para eso esta el TimeStamp.
>
> En realidad no deberia bloquearce un registro sea donde sea.se
debe
> buscar un metodo diferente si no quieres que nadie acceda.
>
> Salute
>
> "" wrote in
> message news:50b401c473fd$e70cc370$
> > Como puedo bloquear un registro de un atabla para que
> > nadie pueda acceder a el.
>
>


Respuesta Responder a este mensaje
#4 Carlos Sacristan
29/07/2004 - 13:30 | Informe spam
Bueno, no termino de estar de acuerdo totalmente contigo por lo que te
comentaba antes: un bloqueo no es intrínsecamente malo, ya que si bien evita
la concurrencia (bueno, hablamos de un bloqueo exclusivo, claro), garantiza
la coherencia de los datos.

En cuanto a que no siempre se bloquean registros individuales sino
recursos más amplios, pues sí, es así, pero podemos volver a aplicar lo del
párrafo anterior...

No quiero que entiendas esto como una crítica negativa a tu forma de
trabajar: si no te ha dado nunca problemas, pues no voy a ser yo quien te
cambie tu forma de pensar. Lo que comento es a título constructivo, discutir
es una forma de aprender.


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL
Respuesta Responder a este mensaje
#5 Pablo Fabian Savino
30/07/2004 - 00:23 | Informe spam
Jaja,
No Carlos, no lo tomo como una critica, al contrario, lo tomo como
un buen tema de discucion hamable!!!, no te preocupes.

Con el Famoso y Fastidioso tema de la concurrencia, en mi caso, en
cada tabla pongo un campo INT que lo llamo "control", entonces si un usuario
lee ese registro, tambien trae el valor de control y si al momento de
Eliminar o Actualizar el registro, ese valor de Control sigue siendo el
mismo, entonces asumo que el registro aun es mio,pero si no es el mismo
quiere decir que alguien antes ya lo actualizo:

Ej
update mitable set nombre='Juan',
control=control+1
where cedula='123456' and CONTROL=@control

de esta forma controlo la concurrencia, ves?, y no tengo la
necesidad de hacer bloqueos de registros.
y notaras q al actualizar, tambien le sumo 1 a Control, de esta forma cambio
el valor para que los demas vean (a posteriori) que alguien ya hizo algo con
ese registro y en la aplicacion le aparece el mensaje que el registro cambio
bla bla bla y deben recargar los datos..

Claro, tambien esta el tema que mi forma de trabajar es programando TODO en
el servidor, mis aplicaciones NO tienen nunca nada de codigo SQL sino
simplemente llamados a puros SP,Views,Funciones de sql
server.entonces vez, aqui yo no necesito bloquear nada porque nunca
estoy conectado al server , solo me conecto cuando hago algo y me desconecto
enseguida.


Bueno, este tema es interesante porque es muy tipico jejeje y se pueden
evaluar muchas opciones .


Saludos.
Carlos es un gusto compartir esta polemica contigo!!!, no te preocupes que
se con quien me escribo y estamos hablando de temas profesionales y ya me di
cuenta que eres un hombre serio.

Nos estamos escribiendo!
Salute!!






"Carlos Sacristan" <csacristan ARROBA mvps.org> wrote in message
news:%23KoTE%
Bueno, no termino de estar de acuerdo totalmente contigo por lo que te
comentaba antes: un bloqueo no es intrínsecamente malo, ya que si bien


evita
la concurrencia (bueno, hablamos de un bloqueo exclusivo, claro),


garantiza
la coherencia de los datos.

En cuanto a que no siempre se bloquean registros individuales sino
recursos más amplios, pues sí, es así, pero podemos volver a aplicar lo


del
párrafo anterior...

No quiero que entiendas esto como una crítica negativa a tu forma de
trabajar: si no te ha dado nunca problemas, pues no voy a ser yo quien te
cambie tu forma de pensar. Lo que comento es a título constructivo,


discutir
es una forma de aprender.


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida