![]() |
Como puedo guardar y mostrar las ñ?
Buenas tardes compañeros,
estoy aqui con un problema el cual no he podido resolver, resulta que no he podido guardar ni mostrar desde delphi algun dato que contenga la ñ, acentos o cualquier caracter latino, nose que estoy haciendo mal. Ya he cambiado de charset y de collate, pero los que he probado no me han funcionado, y se supone que con un charset tipo latin1 y un collate latin1_spanish_ci deberia de funcionar, segun tengo entendido. ya intente poniendo tambien el charset del font en delphi a OEM_CHARSET y lo unico que logro es mostrar PEÑA en lugar de PEÑA. alguna sugerencia seria bienvenida, muchas gracias por su apoyo. |
de plano nadie tiene una sugerencia,... por minima que sea, porfavor... lo que sea :(
|
¿Qué componentes estás usando? Una cosa es el juego de caracteres que tengan asignado tu base de datos y/o tablas, y otra el juego de caracteres que use el cliente para mandar las consultas. En MyDac, por ejemplo, la componente TMyConnection tiene en su propiedad Options la opción Charset en donde puedes seleccionar el juego de caracteres que usará la conexión. Quizá, por alguna razón, la opción por defecto no sea compatible con la que tienes en el servidor. Prueba ejecutando la consulta
enlazada a un DBGrid, desde tu conexión en Delphi, para que veas cuáles son los juegos de caracteres que está usando tu conexión. // Saludos |
muchas gracias por responder roman, tuve la intencion de enviarte un privado pues parece que conoces bien de delphi y mysql, pero no lo hice :rolleyes: ...
respecto a los componentes utilizo Zeos version 6.6.0 - beta, los utilizo porque fueron los primeros que encontre :S, el problema que he tenido es que no he visto ninguna documentacion que pueda valer la pena leer, y el ningun componente he podido ver alguna propiedad para que me diga que charset estoy utilizando, por lo que veo tu utilizas los MyDAC, no habia escuchado de ellos, pero si tu los utilizas, creo que voy a probarlos, por lo menos ahi si va esa propiedad no? en mis tablas y campos utilizo el charset latin1 y el collate en latin1_espanol_ci , los cuales me supongo deberian de ser suficientes para poder almacenar este tipo de caracteres... por cierto utilizo dos administradores de bd el Mysql Administrator y el SQLYog, en el administrator si puedo guardar directamente y ver las Ñ, pero esos mismo datos, los veo mal en el sqlyog, al igual que en delphi. tu me sugeririas utilizar los mydac? gracias |
Mi sugerencia, antes de que cambies de componentes (porque con ZEOS debería funcionarte) es que hagas lo que te comenté:
Con Delphi y Zeos haces un pequeño programa que haga la consulta
y que te muestre los resultados en un dbgrid. La consulta te devuelve un dataset con dos columnas: variable, valor ahí verás varias variables que comienzan con character_set. Ve qué valores tienen, sobre todo los de character_set_connection y character_set_results. Hazlo y nos comentas. // Saludos |
ya hice lo que me dijiste sobre el show variables, y todas las varibles de charset tienen como valor utf8 y el collation dice utf8_general_ci
como y donde puedo cambiar esos valores? para que sean latin1 |
Cita:
Pero bueno, puedes modificar varios de esos valores con la instrucción SET. En una componente Query pones:
y la abres con ExecSQL. Los cambios no son permanentes, sino sólo para la sesión. // Saludos |
muchas gracias roman, es bueno saber como hacer el cambio, pero opte mejor por utilizar los componentes de MyDAC, y a la primera me funciono lo de los caracteres latinos al poner en options de la conexion el charset latin1, ademas de que por lo menos estos traen ayudas y documentacion, del cual carece el zeos.
muchas gracias de nuevo. |
La franja horaria es GMT +2. Ahora son las 09:35:49. |
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