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 13-12-2003
IcebergDelphi IcebergDelphi is offline
Miembro
 
Registrado: may 2003
Ubicación: VillaFlores, Chiapas, Mexico
Posts: 81
Poder: 21
IcebergDelphi Va por buen camino
Como actualizar toda una tabla con bastantes registros?

Hola amigos estoy haciendo una aplicacion, en la cual se tiene que actualizar toda una tabla diariamente , que en futuro llevara cientos de registros o miles.
Me explico, la tabla se llama Clientesdeuda , esta tabla tiene el campo nombrecliente y tiene un campo que dice diastrans ( Dias transcurridos de deuda), lo que yo quiero hacer es que cada que se habra el sistema el campo diastrans se actualize dependiendo la fecha de la computadora, pero no se me ocurre como hacer esto, ya que diariamente tiene que hacerce esa actualizacion con cientos de registros, y seria muy pesado que recorriera la actualizacion cada registro.

Gracias.
__________________
IcebergDelphi
LIA. Hiber tadeo Moreno Tovilla. INITEC Software
Responder Con Cita
  #2  
Antiguo 13-12-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿No te convendría más que en lugar de guardar los días transcurridos guardes la fecha en que se inició la deuda (presumiblemente el día en que insertas el registro)?

De esta manera no tienes que hacer ninguna actualización; cuando requieras saber los días transcurridos de la deuda de un cliente simplemente lees la fecha de inicio y calculas los días transcurridos hasta la fecha.

// Saludos
Responder Con Cita
  #3  
Antiguo 13-12-2003
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.

Estoy con Roman, aunque si quieres hacerlo como has comentado. Lo mejor que puedes hacer es mantener una tabla de configuración, con la fecha de la ultima vez que has actualizado los dias transcurridos. (campo ultimaact en la tabla config)

Cuando arrancas la aplicación, compruebas que ultimaact sea igual a la fecha actual, en caso contrario lanzas las siguientes actualizaciones :

udpate clientesdeuda set diastrans = diastrans + (current_date - (select ultimaact from config))

update config set ultimaact = current_date

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #4  
Antiguo 15-12-2003
IcebergDelphi IcebergDelphi is offline
Miembro
 
Registrado: may 2003
Ubicación: VillaFlores, Chiapas, Mexico
Posts: 81
Poder: 21
IcebergDelphi Va por buen camino
Gracias amigos del foro, seguire el consejo que ustedes me dan
__________________
IcebergDelphi
LIA. Hiber tadeo Moreno Tovilla. INITEC Software
Responder Con Cita
  #5  
Antiguo 16-12-2003
Avatar de Voutarks
Voutarks Voutarks is offline
Miembro
 
Registrado: jul 2003
Ubicación: Islas Canarias
Posts: 118
Poder: 21
Voutarks Va por buen camino
Sin duda la mejor solución, opino yo, es la que comenta Román, ya que no le veo mucho sentido a modificar todos los días un dato fácilmente calculable de otra manera.

Es como si quisiera que en una tabla empleados al abrir cada registro aparezca cuantos días ha vivido cada uno y en vez de guardar la fecha de nacimiento y restársela a la fecha actual voy actualizando una campo DiasVividos todos los días. ¿A que suena inútil?
__________________
Emilio J. Curbelo
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


La franja horaria es GMT +2. Ahora son las 17:17:48.


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