Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc...

Estas en el tema de mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc... en el foro de Mysql en Foros del Web. Hola, ¿es posible que una sola base de datos tenga una tabla con varios campos, y cada uno pueda almacenar textos con diferentes juegos de ...
  #1 (permalink)  
Antiguo 10/11/2009, 06:59
 
Fecha de Ingreso: octubre-2009
Mensajes: 26
Antigüedad: 15 años
Puntos: 0
mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc...

Hola,

¿es posible que una sola base de datos tenga una tabla con varios campos, y cada uno pueda almacenar textos con diferentes juegos de caracteres?

¿Y puedan ser mostrados como resultado en una misma pagina web?

tabla textos:

id_texto| esp | ing | griego | ruso
------------------------------------------------------------------------------------------------------------
1 | texto español | texto en inglés | Ελληνική γλώσσα | Греческий текст
  #2 (permalink)  
Antiguo 10/11/2009, 07:22
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc.

mira esto
http://dev.mysql.com/doc/refman/5.0/...-examples.html

no he probado nada.

Nos cuentas como te va.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 10/11/2009, 08:05
 
Fecha de Ingreso: octubre-2009
Mensajes: 26
Antigüedad: 15 años
Puntos: 0
Respuesta: mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc.

gracias, pero no me aclara mucho en el manejo de los datos ;)
  #4 (permalink)  
Antiguo 10/11/2009, 08:15
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc.

si te soy sincero no manejo mucho los tipos de collations que hay. Pero con respecto a tu pregunta te digo que si es posible.

Código mysql:
Ver original
  1. mysql> create table col(c1 varchar(10) CHARACTER SET latin1 COLLATE latin1_german1_ci,
  2. >c2 varchar(10) CHARACTER SET latin1 COLLATE latin1_spanish_ci);
  3. Query OK, 0 rows affected (0.03 sec)

Si te fijas, c1 está con latin_german1_ci mientras que c2 está con latin_spanish_ci.

queda en tus manos elegir para cada idioma que collation debes utilizar y los caracteres que ingresaras en cada campo.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 10/11/2009, 08:19
 
Fecha de Ingreso: octubre-2009
Mensajes: 26
Antigüedad: 15 años
Puntos: 0
Respuesta: mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc.

gracias, he hecho alguna prueba y parece que en relación a almacenar no hay problema en definir un charset distinto en campos distintos.
  #6 (permalink)  
Antiguo 10/11/2009, 12:59
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 7 meses
Puntos: 300
Respuesta: mysql campo en ingles, otro en español, otro en griego, otro en ruso, etc.

Javiercg_,
huesos52 ha llamado mi atención sobre tu post. Te diré que naturalmente que se puede y que no es nada difícil. Sólo tienes que establecer como codificación utf8, y como collation utf8_unicode_ci. Así de simple por lo que se refiere a la base de datos, cuyas tablas, naturalmente, tendrán esa codificación y collation, y sus campos esa collation, hasta tanto no interese otra cosa, digo, por ej. una búsqueda que tenga en cuenta acentos, etc. Olvídate de las distintas codificaciones para distintos campos, pues no es necesario y es un paso atrás.
Luego te preocuparás de que tanto los archivos php como html tengan la codificación utf8. No sé si usas sesiones, si también usas ajax. Si no es el caso, no tendrás mayor problema que usar una fuente unicode del tipo politónica griega para mostrar los datos. No te preocupes por el alfabeto cirílico, porque también está incluido. Tahoma, por ej., es de esas. Ya hay muchas. Otra cosa es teclear en griego o en ruso cómodamente desde un teclado español, aunque para eso hay intercambiadores de teclado fantásticos y comodísimos, y gratuitos. Yo conozco algunos para el griego y seguro que también los hay para el ruso. Otro problemilla que suele suceder es que conviene informar al servidor de que le sirves información en utf8 y quieres que te la trate y devuelva como utf8. Eso en MySQL se hace con SET NAMES 'utf8'. Y a eso se reduce casi todo. Se puede y es fácil, si empiezas bien.
Observa este enlace de una página de la que soy administrador. Es muy simple y estéticamente mejorable, pero hace lo que parece que tú buscas, claro.
http://www.dicciomed.es/php/diccio.php

Entra pulsando en los enlaces y selectores
Listados > Estudios de lexemas y raíces > lexemas por lengua > gr.

Verás que puedes ordenar por lexemas y por griego. En el caso de lexemas no he quitado del orden los guiones y demás, pero sí en el griego, mediante varios replace aplicados al ORDER BY.

en este post de nuestro foro me extiendo algo más:
http://www.forosdelweb.com/f86/cotej...spanol-629105/

Última edición por jurena; 10/11/2009 a las 14:39
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:45.