2010-06-09 6 views
8

Les caractères non anglais sont foirés dans une colonne de texte. texte arabe ressemble à ceci:Comment stocker des caractères non-anglais?

Ù † Ù € ج٠€ Ù ... س٠€ Ù ‡ Ù € USU € Ù «

Comment stocker non caractères anglais correctement?

Répondre

10

Vous devriez envisager d'utiliser UTF8 pour stocker votre texte.

Vous pouvez le faire à la création de bases de données:

CREATE DATABASE mydb 
    DEFAULT CHARACTER SET utf8 
    DEFAULT COLLATE utf8_general_ci; 

Vous pouvez également configurer mysql lors de l'installation ou au démarrage pour utiliser UTF8 (voir Mysql manual)

Les pages de manuel MySQL couvrent tous les aspects de characterset et :

classements http://dev.mysql.com/doc/refman/5.0/en/charset.html

le jeu de caractères de la connexion peuvent être modifiés par

SET CHARACTER SET utf8 

Plus de détails here et dans le chapitre Character set support

2

Quel système d'exploitation utilisez-vous?

Si c'est Linux, alors il est bon d'avoir un environnement local système défini sur utf8, comme "en_US.utf8".

Et, bien sûr, émettre une commande "SET NAMES UTF8" à mysql juste après la connexion.

(caractère db set/collation doit également être UTF8)

1

La requête résoudre la question ci-dessous.

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

Et pour toute la base de données si possible serait encore mieux. Utilisez SET NAMES utf8 –

Questions connexes