Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Nombre de tabla muy largo en MySql (https://www.clubdelphi.com/foros/showthread.php?t=53761)

seoane 28-02-2008 21:30:58

Nombre de tabla muy largo en MySql
 
Tengo una aplicación que accede a unas tablas de MySql a través una conexión odbc y un TTable, ya se que no es la mejor manera de hacerlo pero es una aplicación que "herede" de esta manera. El problema es que cuando una tabla tiene un nombre muy largo, por ejemplo "Nombre_De_Tabla_Muy_Largo", me da un error al intentar acceder a ella, y el error que me indica delphi es que no puede acceder a la tabla "Nombre_De_Tabla_Muy_L". Y si por ejemplo le cambio el nombre a la tabla por "Nombre_De_Tabla_Muy_L" si puedo trabajar con ella sin problemas, pero no puedo cambiar los nombres de las tablas porque también las utilizan otros programas para generar informes.

Lo mas curioso de todo es que la aplicación si funcionaba bien antes de que yo metiese la mano :D ... y lo único que hice fue actualizar la versión de MySql y compilar el código fuente en delphi 7 (antes estaba en delphi 3). También cambie algunas cosillas pero nada relacionado con la base de datos.

En resumen, ¿alguien conoce alguna limitación en la longitud de los nombres de MySql? ¿puede ser la versión de MySQl, del conector Odbc o de delphi? ¿a alguien le ha pasado algo parecido?

poliburro 28-02-2008 22:23:28

Haz, la prueba con el conector ODBC y con un TAdoTable.

Si funciona bien, significará que es problema del BDE.

suerte

seoane 28-02-2008 23:06:39

Cita:

Empezado por poliburro (Mensaje 269535)
Haz, la prueba con el conector ODBC y con un TAdoTable.

Haré esa prueba poliburro. :)

Mientras, si alguien tiene mas ideas que las diga. Estoy completamente perdido en este asunto :(

poliburro 29-02-2008 00:22:55

Cita:

Empezado por seoane (Mensaje 269553)

Mientras, si alguien tiene mas ideas que las diga. Estoy completamente perdido en este asunto :(



Te comentaba sobre ADO pues a mi no me ha dado ese problema, supongo que debe ser el BDE. Ahora bien. cuándo creas el ODBC, mysql te da opciones de configruación adicionales. Has probado con alguna de ellas? (hay una que permite omitor el caracter # en el nombe de la tabla)

keyboy 29-02-2008 05:33:43

Cita:

Empezado por seoane (Mensaje 269518)
¿alguien conoce alguna limitación en la longitud de los nombres de MySql? ¿puede ser la versión de MySQl, del conector Odbc o de delphi? ¿a alguien le ha pasado algo parecido?

Yo creo que es esto. Hice algunas pruebas con el driver 3.51 y observé el problema que describes. Cambié al driver 5.1 y se resolvió.

Si aún así no funciona, puedes intentar crear una vista sobre la tabla en cuestión, y ponerle un nombre cortito a esa vista. La vista será actualizable así que puedes conectar el Table a ella y los cambios se reflejarán en la tabla original.

Bye

seoane 29-02-2008 11:49:29

keyboy te debo una cerveza :D Cambie la versión a la 5.1 y el problema se resolvió.

Muchas gracias a los dos, me he sacado un gran peso de encima

poliburro 29-02-2008 18:59:24

Cita:

Empezado por keyboy (Mensaje 269595)

Yo creo que es esto. Hice algunas pruebas con el driver 3.51 y observé el problema que describes. Cambié al driver 5.1 y se resolvió.

El único pero del driver es que aún no está listo para producción. :(

keyboy 29-02-2008 19:06:55

Ya me extrañaba que la página http://dev.mysql.com/downloads/connector/odbc/ redireccionara a la del driver 3.51 :(

Llama la atención de todas formas, que le funcionara antes de cambiar de versiones de MySQL.

En todo caso, a final de cuentas, lo más adecuado será el cambio de componentes, tal como mencionaste antes.

Bye

seoane 29-02-2008 23:30:38

Me avergüenza decir que voy a usar la versión 5.1 aunque todavía no sea estable, pero la verdad es que me están presionando para que la aplicación funcione :(

Cuando las cosas estén mas calmadas propondré un cambio en los componentes ;)

Otra vez muchas gracias.


La franja horaria es GMT +2. Ahora son las 07:02:06.

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