Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-03-2007
felixgo felixgo is offline
Miembro
 
Registrado: may 2003
Posts: 86
Poder: 22
felixgo Va por buen camino
que os parece este planteamiento

Hola

voy a migrar una aplicación de BDE a FIBplus y me gustaría que me dieseis vuestra opinión sobre este plenteamiento.
Voy a definir dos transaciones para toda la aplicación una para lectura y otra para escritura, las consultas que sólo utilice para rellenar combos... usarán la de lectura y las que sean actualizables utilizarán la de lectura para leer y la de escritura para actualizar.
Voy a utilizar cachedupdates para los dataset actualizables, para hacer la modificaciones en el cliente y mandar juntos todos los cambios al servidor y controlar las transaciones explicitamente para minimizar el tiempo de trasnsación de escritura algo asi
try
trasn.StartTransaction;
DataSetCabecera.ApplyUpdate;
DataSetLineas.ApplyUpdates;
......
Tras.Commit

Tengo alguna duda, la trasación de lectura la puedo abrir al comenzar la aplicación y dejarla abierta todo el tiempo o cmbiene abrirla y cerrarla?

Cualquier comentario será bien recibido, ya que este cambio implica bastente tiempo espero no equivocarme, y que el rendimiento de la aplicación mejore significativamente

Gracias
Responder Con Cita
  #2  
Antiguo 14-03-2007
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.285
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 felixgo
Tengo alguna duda, la trasación de lectura la puedo abrir al comenzar la aplicación y dejarla abierta todo el tiempo o cmbiene abrirla y cerrarla?
Yo así a "bote pronto" te diría que no lo hicieras; Primeramente porque es justo lo contrario de la definición de una transacción. Una transacción debe ser lo más corta posible. Lo segundo, creo que te puede dar problemas de datos incongruentes, fantasmas, lecturas sucias y demás... dependiendo de la configuración que escojas.

Otra desventaja es que seguramente bajará el rendimiento, ya que el hecho de "arrastrar" la transacción conlleva más operaciones.

No se, si a alguien se le ocurre alguna ventaja de esta configuración que la diga.
__________________
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
  #3  
Antiguo 14-03-2007
felixgo felixgo is offline
Miembro
 
Registrado: may 2003
Posts: 86
Poder: 22
felixgo Va por buen camino
Entonces me recomiendas abrir y cerrar la transación por cada consulta? debería asociar una transación a cada consulta? De todas formas en un formulario necesitio varias consultas(agentes, formas de pago, descuentos....) que muetro en combos o en grid. la transación debería estar abierta el mismo tiempo que la consulta, de lo contrario se cierra la consulta.
a no ser que el data set lo marque como cachedupdates aunque no se vaya a actualizar, hay alguna penalización el rendimiento si pongo cahcedupdates a true?
gracias
Responder Con Cita
  #4  
Antiguo 14-03-2007
Nelet Nelet is offline
Miembro
 
Registrado: may 2003
Ubicación: Picassent - Valencia
Posts: 95
Poder: 22
Nelet Va por buen camino
Opino exactamente igual. Incluso a lo de la transacción de lectura no le veo ningún sentido.
__________________
_____________________________________
And follow me to where the real fun is
Responder Con Cita
  #5  
Antiguo 14-03-2007
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Con firebird/Interbase no tiene gracia porque estas usan un modo generacional, que permite tener "versiones" y que no utiliza locks en la base de datos, o sea, es muy optimo tanto pa' leer como pa' escribir.

Con otros motores si tiene sentido. No solo lo de lectura y escritura sino ademas tunear el modo de aislamiento de la transaccion.
__________________
El malabarista.
Responder Con Cita
  #6  
Antiguo 14-03-2007
Nelet Nelet is offline
Miembro
 
Registrado: may 2003
Ubicación: Picassent - Valencia
Posts: 95
Poder: 22
Nelet Va por buen camino
Habrá que leer más, porque todo me suena. Hay que ver lo que aprende uno por estos lares.
__________________
_____________________________________
And follow me to where the real fun is
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
parece html gulder Varios 6 28-02-2007 19:14:30
Que GUI les parece mejor? D-MO La Taberna 2 24-08-2006 11:45:29


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


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