Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Error al abrir una tabla DBF de FoxPro. (https://www.clubdelphi.com/foros/showthread.php?t=41149)

joseangelm 08-03-2007 16:39:51

Error al abrir una tabla DBF de FoxPro.
 
Tengo una base de datos con Fox pro, extoy creando un procedimiento para migrarla a SQL, utilizo tablas ADO para la base de datos en sql y tablas APOLLO para las tablas de FoxPro.
Estoy teniendo problemas esporadicos al abrir una tabla en concreto, en ocasiones aparece el error (la mayoria) y en ocasiones no. Tambien aparece en alguna otra tabla de vez en cuando (1 de 180).

Mi problema es el al abrir la tabla DBF (componente APOLLO).

"DbfTable.open;"

Me dice que el archivo no existe, pero no es cierto, el archivo existe y si intento abrirlo con "DBF viewer" me da un error 3, y me dice que no existe.
Esto me sucede despues de meter las tablas en un back up y descomprimirlas.

Si alguien me puede ayudar se lo agradeceria.

poliburro 08-03-2007 20:03:22

si estas intentando migrarlas a SqlServer, te recomiendo que en lugar de usar delphi, uses una DTS. Son una herramienta poderosisima, Aca en la empresa usamos las Dts para migrar desde Dataflex, Db2, Paradox y Archivos de texto a nuestras tablas de Sql Server.

joseangelm 09-03-2007 09:29:57

No es una migración tal cual, pues debo modificar algunas tablas y otras cargarlas en nuevas tablas que necesito.

La aplicación ya la he echo, ahora estoy creando queries para recuperar los posibles datos erroneos, pues el diseño de la base de datos es una caca.

Fita 12-03-2007 01:02:09

Hola JoseAngel...

He pasado por algo similar cuando tuve que migrar tablas Fox a Interbase. Mis sistemas tambien estaban en tablas dBase pero manejadas con Visal dBase 7.5 y BDE. Cuando queria abrir una tabla Fox el Visual dBase daba error porque no podia "ver" el indice de las tablas fox (venian de un sistema D.O.S.).
La solución "casera" que encontré fué eliminar el indice de la tabla (cdx); al abrirla con Visual dBase el error ya era "Index not found, open read only ?"; se aceptaba con Yes y la tabla abria lo mas bien. De aqui en mas el programa de conversón que habia hecho para la migración funcionaba sin problemas ya que lo unico que nesecitaba era leer solamente la(s) tabla(s).
Trata de abrir las tablas fox con otro gestor de base de datos, (el Visual dBase se descontinuo hace años pero he visto que en el eMule esta).
Espero que este comentario de de alguna idea para resolver tu problemas.

Saludos

joseangelm 12-03-2007 10:27:12

No me sirve, en ocasiones la tabla que me da el error no tiene el archivo ".cdx".
Lo raro es que cuando intento abrir la tabla con el DBF viewer me sale un error del tipo 3 y me dice que la tabla no existe.
Yo creo que la tabla pierde los indices o algo que no la deja abrir, existirá alguan herramienta para recuperar tablas DBF corruptas??

Fita 14-03-2007 00:06:15

Podrías enviarme un par de tablas que te dan error ?
fita4@datafull.com

joseangelm 14-03-2007 10:05:32

Lo siento, es informacion confidencial y estan encriptadas mediante una clave que no puedo proporcionarte.
Muchas gracias de todos modos.

Me han comentado que hay programas como "DBF doctor" o "Advanced DBF repair" ... No sabreis algun sitio para descargarme alguno?? Aunque sea de prueba, pero que pueda arreglar alguna tabla.

Fita 15-03-2007 02:26:22

Entiendo lo de la confidencialidad...

El Advanced Dbf repair esta en el eMule, puedes bajarlo desde ahí... nunca lo he utilizado, no se si es de paga o libre...

Volviendo al problema de tu dbf, si mal no recuerdo el error 3 es "Path not found", no creo que sea un problema de corrupción de datos.

También puedes utilizar el Database Desktop de Jedi para abrir las tablas, es libre, esta en:

http://sourceforge.net/projects/jedidbd/

Saludos

joseangelm 16-03-2007 16:34:49

PAra los que pueda ayudar:
He encontrado una solucion un poco excentrica.

Copiar y pegar el archivo DBF desde mi equipo (Windows XP) a un equipo con windows 98 y volverlo a copiar a mi equipo.
Impresionante, se puede abrir sin problemas. ???

No se la explicación.

Intentaré probar alguna aplicación del tipo de DBF doctor o Dbf Recover.

Muchas gracias por todo.

dalsim 16-02-2009 19:47:07

hola que tal estoy tratando de abrir una dbf
 
miren estoy tratando de abri unas dbf con delphi utilizando ttable , dataspurce y un dbgrid pero en algunas si las puedo abrir y en otra sme dice que error de cabecera me podrian ayudar con algun ejemplo o si es que estanb encriptadas como desencriptarlas yo necesito solo desplegar y hacer consultas de un sistema yo dar de alta con delphi las bases de datos estan en fox pro para dos uso xp (delphi 2007)

totote 09-03-2009 12:18:37

Hola dalsim, resulta que tengo el mismo problema que vos y queria saber si lo habias solucionado, de ser así cual fue la solución.

Saludos

dalsim 09-03-2009 15:08:16

No au nno ha salido el valiente jejejej
 
fijate que no la he resuelto y lo dee por la paz bueno si seria bueno ver cual seria la solucion por que es en mi trabajo y me piden unos reportes en unas tablas que no puedo abrir no se si se deba a que esten encriptadas o algo por el estilo por que ni con visual fox las puedo ver me dice que error de cabecera pero con elprograma que lasusa si las puedo abrir, pero si es un sistema de esos de pantallita negra fox pro

totote 09-03-2009 15:20:42

tendremos que seguir renegando :S

Si encuentro alguna solucion la comento. Saludos

thelibmx 09-03-2009 23:25:28

Hola, yo uso un componente que se llama Tdbf para abrir las tablas fox pro , tal ves te pueda servir o te de una pista, aqui un link
http://tdbf.sourceforge.net/

:cool:

totote 10-03-2009 11:29:44

Amigo thelibmx estoy probando el componente Tdbf que nos recomendaste y por el momento estoy con pruebas básicas y funciona de maravilla, lo único que no le he encontrado todavía es como definirle los archivos .CDX pero ya voy a ver si está y en donde.

Por el momento muchas gracias me has resuelto un grand dolor de cabeza jeje.

EDITADO: Lo probe con las tablas en donde me generaba el error "Corrupt table/index header" y pude consultar modificar e ingresar registro

Saludos :D


La franja horaria es GMT +2. Ahora son las 01:45: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