Ver Mensaje Individual
  #3  
Antiguo 19-06-2014
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Reputación: 18
anubis Va por buen camino
hola otra vez,

Estaba viendo este tema de las transacciones pero no me aclaro.

Uso componentes zeos y firebird.
en la conexion tengo seleccionada transacisolationleve como tireadcommitted.

A la hora de guardar un registro lo hago como
Código Delphi [-]
zquery.post;
zquery.applyupdates;
zquery.commitupdates;
zquery.refresh;

Funcionar funciona bien.

El programa tiene un apartado de venta que se usa en una computadora para ventas y por el otro lado, esta el administrador que va dando de alta los productos, compras etc.

Leyendo sobre el tema y sobre un comentario de Casimiro
Cita:
El otro día un usuario (de clubdelphi) decía que tenía una BD de 10 gigas y que era algo lenta, le aconsejé hacer un backup/restore y volvió a la normalidad, además de ocupar menos de 400 megas, parece que nunca jamás había hecho "limpieza" de la BD
Te aconsejo que leas "EL" documento por excelencia sobre transacciones.
Me he liado mas, porque zeos no tiene un componete de transacciones o si?.
estoy leyendo todo el post Transacciones en Zeos. Conviene una por Conexión ?, así como otros, pero si esta dificil, nose si lo que puse como hago las cosas es correcto o no, porque no uso transacciones, eso creo, y la finalidad es no cerrar la conexion a otros usuarios mientras el administrador da de alta o modifica para evitar el deadlock.

No se si me lo parece a mi, por lo que leo, que es un tema controvertido. El ejemplo del banco es muy bueno, se cierra automaticamente la transaccion para evitar conflictos.

En mi caso, y perdonad que me repita, si se usan dos computadoras, y en una se estan efectuando ventas de un minisuper, si el administrador por el otro lado esta modificando un registro que afecta tambien afecta, no puedo cerrar la transaccion de las ventas, debiera de ser todo transparente para los dos usuarios.

Mejor seria tenerlo todo en una misma computadora pero no es viable .

no se si me he explicado, pero que le tendria que añadir para que no hubiera problemas con el deadlock.
mientras voy a reeler el documento que compartio casimiro y bucear en el foro a ver si me aclaro. .
Responder Con Cita