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)
-   -   Problema con tabla (https://www.clubdelphi.com/foros/showthread.php?t=25433)

silviodp 22-09-2005 13:24:13

Problema con tabla
 
Cuando quiero abrir una tabla de mi aplicacion me da el siguiente error: "TblDetOperarios: Not index for field 'Trabajo' ", que significa éste error y como lo puedo arreglar sin perder los datos.
Otro error que se me suele presentar es por ejemplo: "Tabla index is out of date" que siginifica??????
Como se puede hacer para que no ocurran estos errores en las tablas de un programa, estoy usando Delphi 7 con Paradox 7.
Gracias.

Neftali [Germán.Estévez] 22-09-2005 13:39:15

Cita:

Empezado por silviodp
Otro error que se me suele presentar es por ejemplo: "Tabla index is out of date" que siginifica??????

Una simple búsqueda en los foros te dará algunas respuestas:
http://www.clubdelphi.com/foros/showthread.php?t=20002
http://www.clubdelphi.com/foros/showthread.php?t=5965
http://www.clubdelphi.com/foros/showthread.php?t=14685
http://www.clubdelphi.com/foros/showthread.php?t=5566
http://www.clubdelphi.com/foros/showthread.php?t=18805
http://www.clubdelphi.com/foros/showthread.php?t=21165

(por ejemplo)

jmariano 22-09-2005 13:53:00

Cita:

Empezado por silviodp
Cuando quiero abrir una tabla de mi aplicacion me da el siguiente error: "TblDetOperarios: Not index for field 'Trabajo' ", que significa éste error y como lo puedo arreglar sin perder los datos.

Significa que el campo 'Trabajo' no está indexado. No se bien como estarás usando dicho campo, pero para solucionarlo, simplemente, crea un índice para este campo.

Cita:

Empezado por silviodp
Otro error que se me suele presentar es por ejemplo: "Tabla index is out of date" que siginifica??????
Como se puede hacer para que no ocurran estos errores en las tablas de un programa, estoy usando Delphi 7 con Paradox 7.
Gracias.

Significa que la tabla de índices se ha corrompido (este error es muy común cuando Paradox se utiliza en sistemas operativos Win2000 y XP). En la página de Borland podrás conseguir una .DLL con funciones para reparar este problema y una aplicación de ejemplo que hace uso de esta .DLL (incluye código y te permitirá reparar las tablas sin perder información):

TUtility v5.0
Paradox Table Repair with Delphi source

Saludos!

silviodp 22-09-2005 16:16:17

Ploblema con tabla
 
Baje el programa SysUtils32 y lo ejecute en las tablas de mi programa pero no arreglo el problema "TblDetOperarios: No index for fields 'Trabajo' ", ademas me borro toda la informacion de las tablas, menos mal que habia hecho un backup y el problema no es tan grave, pero por que es?? que pude haber hecho mal??, porque no me arreglo el problema arriba citado???
Gracias.-

Lepe 22-09-2005 16:28:44

Para esto: "Tabla index is out of date"

Nada como el programa caerques que lo tienes aqui mismo en la seccion de Ejemplos. Busca en el foro, tiene un pequeño error que ha de solucionarse.

Normalmente la causa puede ser debida a una mala configuración del BDE, de la Session o del Alias.

en los links de Neftali tienes bastante informacion, además puedes buscar por: LOCAL SHARE, NETFILEDIR, TSESSION, SESSION.

Un saludo.

silviodp 22-09-2005 17:26:35

Problema con tabla
 
Si está bien, pero para solucionar el error que puse arriba: "TblDetOperarios: No index..." como lo soluciono??. La verdad es que necesito con urgencia que me digan como puedo hacer para solucionarlo ya que no puedo abrir esa tabla y necesito que la aplicación funcione...
Disculpas pero es urgente.
Gracias.-

jmariano 22-09-2005 18:20:31

¿Puedes abrir la tabla con el "Database Desktop" o con "SQL Explorer"? Por que si es así, entonces, tendrás que ver como estás utilizando el campo 'Trabajo' en tu aplicación (como te comenté mas arriba, podrías probar a indexar este campo a ver si funciona).

Otra cosa, ¿Probaste con la herramienta, TUtility, que te comenté mas arriba? (porque esta herramienta consigue, en teoría, reparar las tablas sin eliminar información)

Saludos!

silviodp 22-09-2005 21:28:24

Problema con tabla
 
El campo lo uso de la siguiente manera:
tengo la tabla 'Trabajos' y la tabla 'Det_Operarios', las cuales están relacionadas mediante maestro-detalle, por el campo IdTrabajos (en la Tbl. trabajos) con Trabajo (de la Tbl. Det_Operarios), pero lo que estuve viendo con el DBD es que en la tabla 'Trabajos' me desactivo el campo IdTrabajos como clave (Key) y luego me quedo sin clave, cuando activo ésto y quiero guardar los cambios me da el siguiente error: "Invalid array of index descriptors. Table:C:\Luminarias\Tablas\Trabajos.DB", en la tabla Det_Operarios me hizo lo mismo pero en ésta me dejo volver al poner el campo como clave.
En las demas tablas de mi aplicacion ocurrio lo mismo me desactivo los campos como claves.
La verdad que no se como arreglarlo, alguien me puede decir como??, gracias.

jmariano 22-09-2005 22:24:20

Podrías probar, en el "Database Desktop", a eliminar todos los índices, guardar los cambios, volverlos a crear los índices y, otra vez, guardar los cambios (a ver si, de esta manera, consigues crear los índices sin problemas). (El error está relacionado con la creación de índices y, en algún ejemplo que he visto por ahí sobre creación de tablas en tiempo de ejecución, lo que se hace es eliminar el índice que da problemas pero no he encontrado mas información).

Saludos!

silviodp 22-09-2005 22:53:16

Problemas con tabla
 
Jmariano:
te comento que pude solucionar el problema de los índices mediante el TUtility32, pero ahora tengo otro problema y es que cree de nuevo la tabla Det_Operarios y luego elimine la misma del Diagrama de datos (donde realizaba la relacion Maestro-Detalle entre las dos tablas), luego cuando quiero volver a crear ésta relacion arrastrando ambas tablas, etc. no me deja establecerla ya que en la ventana del Field Link Designer sólo me aparece los campos de una tabla en éste caso la tabla maestro (Trabajos), y no los campos de la tabla detalle (Det_Operarios), luego como dije antes no me deja establecer la relacion...
Por n-esima vez vuelvo a preguntar, y disculpen, como lo puedo solucionar...
Gracias.-

P.D.: que otro tipo de bases me recomendarian en lugar de Paradox??, no quiero renegar mas con éstas tablas!!!. Conocen alguna documentación acerca de la base que me recomiendan, para aprender como se usa???
Se los agradezco...

Lepe 23-09-2005 15:58:44

Por esto mismo te recomendaba CAERQUES, es un programa que crea codigo fuente delphi para:
- borrar los indices de tus tablas
- Regenerarlos
- Empaquetar las tablas.

Cada vez que inicie el programa, hace todo eso, y ya no tienes que controlar los errores que se puedan producir.

En cuanto a otra base de datos, te recomiendo Firebird
Pero tiene un problema, no se parece en nada a paradox tendrás que estudiarte primero la filosofía de trabajo y despues los componentes de acceso que vas a utilizar. Minimo 2 semanas para documentarte y otras 2 para hacer pruebas que salgan satisfactorias.

Si es un programa complejo, puedes echar el doble de tiempo. Como contrapartida, tendrás muchas:
- Integridad referencial, propagación y borrado de claves ajenas.
- Copias de seguridad automáticas.
- Lanzar eventos desde el servidor para informar a los ordenadores clientes de una situación determinada, etc.
- Triggers, procedimientos almacenados, vistas.
- Seguridad y control de permisos a nivel de tablas y columnas.
- Velocidad, eficiencia y comodidad para hacer tareas "casi imposibles" en paradox.
- etc.

Como ves, merece la pena dar el salto.


Un saludo

silviodp 23-09-2005 21:17:10

Pron¡blemas con tabla
 
Donde lo consigo a CAERQUES??

jmariano 24-09-2005 20:12:49

Caerques, es un programa que se encuentra aquí en la página, en la sección de ejemplos.

Saludos!


La franja horaria es GMT +2. Ahora son las 12:57:11.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi