Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-03-2010
Jose Roman Jose Roman is offline
Miembro
 
Registrado: jul 2006
Ubicación: Colombia
Posts: 361
Poder: 18
Jose Roman Va por buen camino
Bloqueo registro...

Hola a todos....
Tengo Delphi 2007, Zeos y Firebird 2.1.
Me gustaria saber si hay forma de bloquear un registro para que un segundo usuario no pueda modificarlo el mientras que el primero lo este haciendo y lance un mensaje "No se puede modificar este registro debido a que otro usuario se encuentra trabajando con el".

Gracias....
Responder Con Cita
  #2  
Antiguo 03-03-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Hola.

Esto se llama bloqueos pesimistas y está disponible desde Firebird 1.5, se consigue añadiendo cláusula WITH LOCK a la consulta SELECT con la que obitenes los datos a bloquear.

http://www.firebirdsql.org/refdocs/l...-withlock.html

http://translate.google.es/translate...ml&sl=en&tl=es (traducción automática, míralo solo a título orientativo)

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).

Última edición por guillotmarc fecha: 03-03-2010 a las 17:50:13.
Responder Con Cita
  #3  
Antiguo 04-03-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Jose Roman Ver Mensaje
..."No se puede modificar este registro debido a que otro usuario se encuentra trabajando con el".
Este tipo de bloqueos son muy restrictivos. ¿Seguro que deas utilizarlos?
Con un número grande de usuarios te puede dar muchos problemas.

Sólo piensa en el que abre la pantalla y se va al servicio o a tomar un café...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 04-03-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Este tipo de bloqueos son muy restrictivos. ¿Seguro que deas utilizarlos?
Con un número grande de usuarios te puede dar muchos problemas.

Sólo piensa en el que abre la pantalla y se va al servicio o a tomar un café...
Pienso exactamente igual, no aconsejo en absoluto estos bloqueos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).

Última edición por guillotmarc fecha: 04-03-2010 a las 14:50:54.
Responder Con Cita
  #5  
Antiguo 10-09-2014
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Perdonad que recupere este post antiguo.

Estaba buscando el tema de bloqueos que decis que no son recomendables.

La cuestion, tal y como la hace el usuario que pregunta, es si uno esta trabajando con un registro y otra persona accede a el ahi se generaria un problema, en estos casos, sino se debe bloquear, como se podria hacer para que no afecte al registro afectado por las dos partes.

gracias
Responder Con Cita
  #6  
Antiguo 10-09-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola anubis
Cita:
Empezado por anubis Ver Mensaje
...
La cuestion, tal y como la hace el usuario que pregunta, es si uno esta trabajando con un registro y otra persona accede a el ahi se generaria un problema, en estos casos, sino se debe bloquear, como se podria hacer para que no afecte al registro afectado por las dos partes.
Creo que está todo dicho con el ejemplo del empleado que se va a tomar un cafe...

¿ Que peor situación que tener operaciones paradas por culpa de un #@$%&! que salió media hora por un café sin antes confirmar lo que estaba haciendo ?

En lo particular me valgo del uso de EVENTS para avisar si el estado del objeto sobre el que esta trabajando un usuario se ha modificado, de ser así tendrá que retomar la tarea. Pero ese tipo de situaciones, estadísticamente se presenta muy rara vez

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 10-09-2014
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Gracias por responder,

La verdad, estoy acabando un programa para un supermercado pequeñito(para un amigo), donde tienen un puesto de venta donde nada mas venden y otro, el administrador, donde va dando de alta las compras, cambio de precios etc.

Es en este apartado donde, si se estan vendiendo productos en ese momento que alteran las cantidades mientras se van vendiendo y por el otro lado el administrador va dando de alta las compras de esos productos ahi puede haber un pequeño conflicto porque es un moviendo rapido por parte del vendedor.

El sistema de events ya lo probe, pero en conexiones via internet por ssh sin compresion, y si provoca que tarde mas en consultar los datos que sino los pongo, pero tendre que investigarlo mejor.

uso lazarus y firebird en windows a ver si hay opcion que instale linux y ya veo .
Responder Con Cita
  #8  
Antiguo 11-09-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No tienes que bloquear nada. Lee bien lo anterior o el documento sobre transacciones.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Quitar bloqueo registro. glopez Firebird e Interbase 3 23-03-2007 17:21:46
Problema en Bloqueo de Registro.... AGAG4 Conexión con bases de datos 0 10-10-2005 22:27:45
bloqueo en ADO pescriba Conexión con bases de datos 2 01-10-2004 13:13:13
¿Bloqueo de registro? BECERRA Firebird e Interbase 11 03-12-2003 06:44:48
Bloqueo de Registro en un SP raul_sal Firebird e Interbase 11 21-07-2003 15:11:23


La franja horaria es GMT +2. Ahora son las 00:58:33.


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
Copyright 1996-2007 Club Delphi