2010-06-09 16 views
8

Los caracteres no ingleses están desordenados en una columna de texto. texto árabe se ve así:¿Cómo almacenar caracteres no ingleses?

Ù † Ù € ج٠€ Ù ... ٠س٠€ ‡ u € USU € U “

Cómo almacenar no caracteres ingleses correctamente?

Respuesta

10

debe considerar el uso utf8 para almacenar el texto.

Usted puede hacer esto en la creación de bases de datos:

CREATE DATABASE mydb 
    DEFAULT CHARACTER SET utf8 
    DEFAULT COLLATE utf8_general_ci; 

También puede configurar MySQL en la instalación o en el arranque para utilizar UTF-8 (ver Mysql manual)

Las páginas del manual de MySQL cubren todos los aspectos del juego de caracteres y colaciones: http://dev.mysql.com/doc/refman/5.0/en/charset.html

el conjunto de caracteres de la conexión se puede modificar por

SET CHARACTER SET utf8 

Más detalles here y en el capítulo Character set support

2

¿Qué sistema operativo está utilizando?

Si Linux es bueno tener una configuración regional del sistema establecida en utf8 también, como "en_US.utf8".

Y, para estar seguro, emita un comando "SET NAMES UTF8" para mysql justo después de la conexión.

(db juego de caracteres/colación también debe ser UTF-8)

1

La consulta siguiente resolvieron el problema.

ALTER TABLE tbl_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; 
+0

Y para toda la base de datos, si es posible, sería aún mejor. Usar SET NAMES utf8 –

Cuestiones relacionadas