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 04-03-2005
Avatar de Dantael
Dantael Dantael is offline
Miembro
 
Registrado: nov 2003
Posts: 50
Poder: 21
Dantael Va por buen camino
Unhappy paradox salva y no salva

Hola hice una aplicación en delphi 5 con paradox 7 cree un odbc para la BD y lo controlo desde el BDE administrator, e hice la inserción de la siguiente manera

Código Delphi [-]
table1.insert;
table1.['nombrecampo']:=edit1.text;
table1.post;

por ejemplo. Cuando salvaba todo parecia perfecto apagaba la máquina por una media hora y todo bien pero al apagarla por un día todos los registros guardados desaparecian . El sistema funcionó bien por una semana pero ahora no, luego modifique el código para que quedara de la siguiente manera

Código Delphi [-]
table1.append;
table1.fieldbyname['nombrecampo']:=edit1.text;
table1.post;

de esta forma lo deje y parece funcionar bien no se si es completamente necesario especificar el tipo de dato de la forma table1.fieldbyname['nombrecampo'].as(string):=edit1.text; o si de la forma arriba mencionada está bien, los campos guardados son muy pocos para que se haya salido del límite que tiene paradox para guardar. No sé si de esta forma seguirá generando el error después de que hayan guardado varios registros y que aunque parezca guardar después al apagar el equipo ya no conserve la información. Existe una forma segura de que guarde y GUARDE completamente sin que desaparezca la información. Toda ayuda les agradezco de antemano.

Si cambio a access podria ofrecer un resultado diferente? supongo que podría ser el buffer de la tabla pero no se guardan más que cinco registros máximo por día se apaga y se enciende la máquina al otro día.

Última edición por Dantael fecha: 04-03-2005 a las 07:41:48.
Responder Con Cita
  #2  
Antiguo 04-03-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
en el evento AfterPost de la tabla pon Tabla.FlushBuffers para asegurar que se guardan definitivamente.

saludos
Responder Con Cita
  #3  
Antiguo 05-03-2005
Avatar de Dantael
Dantael Dantael is offline
Miembro
 
Registrado: nov 2003
Posts: 50
Poder: 21
Dantael Va por buen camino
Unhappy problemas

muchas gracias lepe pero pues como mi cliente se estaba desesperando demasiado hice un cambio radical e importe toda la base de datos a access ahora si le pongo el table1.flushbuffers me dice que la operación no es soportada parece que todos los cambios los hace pero no sé si al igual que con paradox después de dos semanas parezca salvar y no salve nada. como puedo estar completamente seguro de que la información se quedará en su lugar y no se borrara?
Saludos y gracias nuevamente
Responder Con Cita
  #4  
Antiguo 05-03-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Paradox no es igual que access, Access es peor todavia

En serio, lo único que se puede hacer son muchas pruebas en el entorno del cliente, ya sabes que cada ordenador es un mundo (SO, drivers, dlls cargadas...)

Supongo que el programa que reindexa, no puedes acceder a los fuentes, por tanto no puedes saber la configuración exacta, así que lo único que puedes hacer son PRUEBAS.

Modificar datos:
- con los dos programas abiertos a la misma vez
- con el tuyo cerrado y el otro abierto (y al revés)

Si los datos estan grabados y despues "desaparecen", será por causa del mantenimiento que realiza el programa de paradox, reindexar indices, por ejemplo.

Un caso conflictivo es el siguiente: Abres tu programa y modificas algunos datos, abres el otro programa, y éste realiza una reindexación de los datos mientras tu estas grabando información. Ya tienes 90% de posibilidad de perder esos datos, o de que haya inconsistencias.

Lo que sí puedes intentar es, mirar todos los archivos que puedan ser de configuración en el otro programa, con el bloc de notas, no solo los ficheros .ini sino otros que tenga con extension .dat .cfg u otra que windows no pueda abrirla.

Quizás algun parámetro de configuración pueda guiarte y saber como funciona.

Saludos
Responder Con Cita
  #5  
Antiguo 11-03-2005
pijo pijo is offline
Miembro
 
Registrado: sep 2003
Ubicación: Barcelona, casi
Posts: 56
Poder: 21
pijo Va por buen camino
Si en el entorno del cliente tienes varios ordenadores y en el ordenador que hace de "servidor" tambien trabajan con el programa quizás pueda ser un problema de tener mal configurado el parámetro LOCAL SHARE del BDE. A mi me pasó esa misma situación y lo solucioné poniendo, en mínimo el que hace de "servidor", el parámetro LOCAL SHARE del BDE a true;
__________________
Ánimos.
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 01:32:24.


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