Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Tablas planas (https://www.clubdelphi.com/foros/forumdisplay.php?f=20)
-   -   problema al abrir tabla paradox (https://www.clubdelphi.com/foros/showthread.php?t=51853)

juanra_pl82 02-01-2008 10:51:18

problema al abrir tabla paradox
 
Hola tengo una pequeña aplicacion realizada en borland builder con una BD paradox.

Ayer al estar utilizando la aplicacion en mi PC (windows vista) se fue la luz y, claro, se me apagó el PC.

Ahora al intentar abrir una de las tablas de la BD (la tabla con la que estaba trabajando en aquel entonces) con el database desktop 7, me dice que nada de nada, que no se puede abrir.

Alguien sabe por qué?

Muchas gracias.

marcoszorrilla 02-01-2008 15:44:47

1. Se han estropeado los índices.
Solución. Borra los índices de dicha tabla, ábrela con el DatabaseDesktop y crealos de nuvo.

2.-Peor aún se ha estropeado la cabecera de la tabla.
Con una utilidad que se llama SYSUTILS, la reparas, busca en los foros no hace mucho yo he puesto la dirección de donde puede descargarse.

3.-Si con lo dicho no puedes arreglarlo, vete pensando en las copias de seguridad.

Un Saludo.

juanra_pl82 03-01-2008 13:40:08

Re
 
Es que la cosa es que con la aplicacion sigo trabajando perfecto, es decir, puedo añadir nuevos datos a la tabla, modificarlos, eliminarlos, ...

Pero meti unos datos erroneos, que para corregirlos tengo que abrir la tabla con el database desktop e ir corrigiendo las tuplas una a una, y ahi esta el fallo, que no me la abre.

Caronte 12-02-2008 21:28:44

Cita:

Empezado por marcoszorrilla (Mensaje 255490)
1. Se han estropeado los índices.
Solución. Borra los índices de dicha tabla, ábrela con el DatabaseDesktop y crealos de nuvo.

Hola, estoy en un caso similar :(
¿Como borro los indices?

eduarcol 12-02-2008 21:52:12

Utiliza primero la utilidad sysutils, te ahorrarias el trabajo y el peligro de equivocarte, en caso de que no funcione, las tablas se guarda el archivo.db y unos archivos con distintas extensiones ".Val", ".YGn", ".XGn" y asi, esos son los indices borralos y los creas

Sigo creyendo que la solucion mas facil es el Sysutils, recuerda hacer una copia de seguridad para evitar perdida de la informacion por algun error "Tonto"

Caronte 12-02-2008 23:39:47

Gracias, mañana lo probaré ;)
Desde luego, las tablas paradox son una kk :mad: mi problema es que he hecho un programa que tiene que consultar constantemente una base de datos vieja de otro programa y por eso he tenido que usar paradox.
Me parece que eso de que dos programas distintos accedan simultaneamente a la misma base de datos (siendo que el viejo también la edita), no se lleva bien con paradox, o algo estoy haciendo mal :confused:

eduarcol 13-02-2008 13:31:44

en la seccion de trucos hay un articulo llamado Paradox en Red, leetelo y alli entenderas que estaras haciendo mal, pero paradox no es malo, es obsoleto pero por regla general funciona bien, tengo sistemas de 5 años funcionando con paradox y los problemas han sido el crecimiento mas no la estabilidad de la base de datos.

marcoszorrilla 13-02-2008 14:46:21

Me parece muy apropiado lo que dice Eduardo, Paradox siempre se le achaca sin razón ser una mala base de datos, lo cierto es que aún hay cientos de aplicaciones funcionando por ahí sin ningún problema.

El problema es que no hay mucha información oficial de como configurar y por ahí viene la mayoría de los problemas.

Un Saludo.

Caronte 13-02-2008 17:53:00

Cita:

Empezado por marcoszorrilla (Mensaje 265509)
Me parece muy apropiado lo que dice Eduardo, Paradox siempre se le achaca sin razón ser una mala base de datos, lo cierto es que aún hay cientos de aplicaciones funcionando por ahí sin ningún problema.

El problema es que no hay mucha información oficial de como configurar y por ahí viene la mayoría de los problemas.

Un Saludo.

Siento discernir, pero para mí, Paradox siempre será una bbdd mala, porque lo que es totalmente intolerable, es que se corrompan los indices, las cabeceras o ambas, simplemente porque haya habido un cuelgue o un corte eléctrico :mad:
Entendería perfectamente que si un registro que estuviese siendo editado o creado en ese momento, se perdiese, PERO ESE UNICAMENTE en lugar de dejar todo inservible hasta que se "intenta" recuperar información por uno u otro método.

Yo se de que hablo porque este problema lo tuve cuando hice la aplicación "vieja" con la que ahora me toca enlazar, lo que pasa, es que en su día probé tantas cosas y leí tanta info al respecto, que al final no tengo claro como solucioné el tema exactamente, porque os aseguro que los errores salían aleatoriamente (sin errores de cortas de luz ni nada por el estilo) simplemente porque sí.

Aquella aplicación "vieja", lleva ahora mismo funcionando 13 años ininterrumpidamente 16 horas al día, pero aún así, JAMAS usaré Paradox como gestor de bbdd a no ser que sea absolutamente necesario.

Cita:

Empezado por eduarcol (Mensaje 265491)
en la seccion de trucos hay un articulo llamado Paradox en Red, leetelo y alli entenderas que estaras haciendo mal, pero paradox no es malo, es obsoleto pero por regla general funciona bien, tengo sistemas de 5 años funcionando con paradox y los problemas han sido el crecimiento mas no la estabilidad de la base de datos.

La aplicación "nueva" que he hecho, ni siquiera es para trabajar en red, porque aunque en su día la aplicación vieja si lo era, actualmente trabaja en local, así que la única similitud con un acceso de red, es que aplicaciónes distintas acceden simultaneamente a una misma bbdd, pero sin salir de la máquina local. De todas formas, pese a trabajar en local, TODO (sesiones, etc) está programado como Paradox en red.

Bueno, siento soltar todo este rollo, pero si sirve para que algún nuevo al leerlo se lo piense dos veces antes de usar Paradox, pues me doy por satisfecho :o porque la rapidez y facilidad con la que se montan estas bbdd tienta a los menos expertos a empezar con ellas, pero toda esa facilidad se convierte en un infierno cuando los errores aparecen intermitentemente sin razón aparente.

Muchas gracias por recomendar la utilidad Sysutils, que me parece muy buena ;)

P.D: Ayer perdí 15 registros de clientes reales (espero poder recuperarlos de un backup) y hoy estoy temiendo que suene el teléfono por si me dicen que el "poltergeist" que nadie sabe como ni porqué ocurre, ha vuelto :(

marcoszorrilla 13-02-2008 18:59:00

Veo lógico que se discrepe, faltaría más, pero en lo que a mí toca sigo opinando lo mismo.

Puedo decir que tengo aplicaciones hechas en Paradox, que en tres o mas años no han tenido ninguna incidencia de las mencionadas.

Naturalmente hay que escudriñar con agudeza la exigua documentación, aunque si nos movemos por la red es fácil de obtener los principios para una buena configuración y así ahorrarse problemas como los citados.

Un Saludo.

eduarcol 13-02-2008 19:06:44

Estoy muy de acuerdo con Marcos, el paradox no es una mala base de datos, es una base de datos Obsoleta, en esos tiempos esta pensada como una bd de escritorio, cualquier otra cosa que le exijas de alli seria jugar con sus configuraciones, ahora si en este momento hay dos personas que te dicen que nunca han tenido ese tipo de problemas no puedes pensar un poco en que debe haber algo que estas haciendo mal???

Por cierto yo hubo un momento en que tuve muchos incovenientes con la base de datos, pero efectivamente configure un poco (Gracias a Marcos y otros amigos del club) y hasta el sol de hoy no he tenido problemas.

Caronte 13-02-2008 21:15:57

Cita:

Empezado por eduarcol (Mensaje 265603)
...no puedes pensar un poco en que debe haber algo que estas haciendo mal???

Sí, claro que podría ser, los bugs ya sabemos lo escurridizos que son ;)

Cita:

Empezado por eduarcol (Mensaje 265603)
Por cierto yo hubo un momento en que tuve muchos incovenientes con la base de datos, pero efectivamente configure un poco (Gracias a Marcos y otros amigos del club) y hasta el sol de hoy no he tenido problemas.

Ya, como has leido en mi mensaje anterior, yo también tengo bbdd Paradox funcionando sin problemas muchos, muchos años, pero solo pensar lo que me costó llegar a esa estabilidad, se me ponen los pelos de punta ;)

Lepe 13-02-2008 21:39:52

Cita:

Empezado por Caronte (Mensaje 265642)
pero solo pensar lo que me costó llegar a esa estabilidad, se me ponen los pelos de punta ;)

¿Acaso no pasa hoy en día?
Ahí tenemos Firebird, un buen SGBBDD, pero si leemos un manual de 10 minutos, lo ponemos en marcha con 100 usuarios y un servidor... tú me dirás, desde problemas de cortafuegos, abrazos mortales, cpuaffinity para procesadores múltiples, etc. No dudes que se te volverán a poner los pelos de punta ;).

En cuanto a la documentación sobre paradox (o el BDE), yo diría que existe, pero está muy dispersa. Recuerdo largas horas leyendo la ayuda del TDatabase y Tsession mientras intentaba deducir la relación de amistad, parental o conyugal de ambos :D. Hoy día en mi memoria, solo quedan recuerdos de sus parientes vivos y muertos ;).

Saludos

Caronte 27-02-2008 18:14:06

Hola, aquí estoy otra vez dando por el c... :p

Nada, que sigo perdiendo registros y el tema ya se está poniendo grave (mi jefe me va a matar) :eek:

A ver...
Tengo dos aplicaciones, una vieja que ha funcionado bien (12 años) hasta ahora y otra nueva, que corren simultaneamente en la misma máquina y ambas accediendo a las mismas tablas paradox.
Bien, pues después de volverme loco y no encontrar ningún bug, me pongo a pensar, y caigo en la cuenta de que mi nueva aplicación ABRE LAS TABLAS EN MODO READ-ONLY (solo consulta) por lo que... a no ser que me digáis lo contrario, pienso que es imposible que una aplicación que abra una base de datos en modo de solo lectura pueda estropearlos indices (o lo que sea) ¿No?

Si tengo razón, el único cambio que he hecho a partir del cual las BBDD se estropean, es usar el Windows XP (antes funcionaba con el 98), así que me pregunto si es que hay algo en el XP que haga que no funcionen bien las tablas de BDE o si debo configurar algo.

¿Qué pensais?

Una ayudita pleassse :(

eduarcol 27-02-2008 18:23:17

Recapitulemos, estas seguro que el netdir y el tempdir estan bien apuntados?, y que el netdir apunta la misma ruta que el de la aplicacion vieja?, aparte de esto estas usando el FLushBuffer en el evento AfterPost??


Son muchas cosas las que hay que configurar en Paradox como ya se te decia no hay una linea magica que resuelva todos tus problemas

Caronte 27-02-2008 19:12:19

Cita:

Empezado por eduarcol (Mensaje 269042)
Recapitulemos, estas seguro que el netdir y el tempdir están bien apuntados?, y que el netdir apunta la misma ruta que el de la aplicacion vieja?, aparte de esto estas usando el FLushBuffer en el evento AfterPost??

Sobre lo del netdir, está apuntando al mismo directorio que usa la aplicación vieja, porque aunque no dispongo del código fuente, en el directorio de la aplicación creé en su día un subdirectorio llamado NET y he comprobado que ahí se crea el fichero PDOXUSRS.NET así que he apuntado el netdir de la aplicación nueva a ese directorio. Supongo que está bien así.

Lo del AfterPost, no tiene sentido en la aplicación nueva, porque nunca va a haber un Post ¿o sí? y en cuanto a la vieja, pues no lo recuerdo (perdí los fuentes), pero como ya comenté la aplicación vieja ha funcionado durante muchos años sin un solo fallo, así que...

Cita:

Empezado por eduarcol (Mensaje 269042)
Son muchas cosas las que hay que configurar en Paradox como ya se te decia no hay una linea magica que resuelva todos tus problemas

¿Ya pero no encuentras raro que solo falle ahora?
¿Tendría que instalar Win98 de nuevo?
En fin... no sé que hacer.

P.D: ¿Me puedes confirmar que sin escribir en una tabla es imposible que me la cargue?

Gracias por tu ayuda ;)

marcoszorrilla 27-02-2008 19:34:14

Otra cosa importante es que si la tabla se accede por la red, si se ataca desde el propio PC que hace de servidor también se acceda por la red no directamente.

C:\MiTBlab (mal)
\\Servidor\c:\MiTabla (Bien).

Un Saludo.

Caronte 27-02-2008 19:41:28

Cita:

Empezado por marcoszorrilla (Mensaje 269082)
Otra cosa importante es que si la tabla se accede por la red, si se ataca desde el propio PC que hace de servidor también se acceda por la red no directamente.

C:\MiTBlab (mal)
\\Servidor\c:\MiTabla (Bien).

Un Saludo.

¿Ostrás, eso también influye? :eek:
Lo puse directo porque iba más fluido :( a ver si va a ser esa tontería... :mad:

Caronte 28-02-2008 07:56:24

Algo debe haber mal configurado, porque ahora con XP si accedo a traves de la red (desde el mismo ordenador) todo va super lentísimo.
Ya no sé que hacer porque me jodería tener que instalar win98 otra vez para ver si así funciona (como antes) :(
Antes funcionaba atraves de red super fluido con Win98 y un Pentium4 2.8Ghz en cambio ahora con WinXP y un PentiumD Dual-Core se arrastra.

¿No tendré que cabiar algo de la configuración del BDE del driver Paradox o de yoquesé?

Ah! y ahora estoy hablando unicamente de la aplicación vieja, así que debería fucionar como lo ha hecho hasta ahora.

Caronte 28-02-2008 08:58:42

Otro dato por si me podeis ayudar:
Si cargo la aplicación y pulso el boton para avanzar registros, pasa de uno a otro muy rapido (como antes), pero en el momento en que filtro los resultados, el avance entre los registros filtrados es lentisimo (y la busqueda tambien).


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

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