2010-06-09 12 views
8

I caratteri non inglesi sono incasinati in una colonna di testo. testo arabo si presenta così:Come memorizzare caratteri non inglesi?

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

Come conservare non- caratteri inglesi correttamente?

risposta

10

è consigliabile utilizzare utf8 per memorizzare il testo.

Puoi farlo al momento della creazione del database:

CREATE DATABASE mydb 
    DEFAULT CHARACTER SET utf8 
    DEFAULT COLLATE utf8_general_ci; 

è anche possibile configurare mysql al momento dell'installazione o in fase di avvio da usare utf8 (vedi Mysql manual)

Le pagine di manuale di MySQL coprono tutti gli aspetti di caratteri e regole di confronto: http://dev.mysql.com/doc/refman/5.0/en/charset.html

il set di caratteri della connessione possono essere modificate

SET CHARACTER SET utf8 

Maggiori dettagli here e nel capitolo Character set support

2

Quale sistema operativo stai utilizzando?

Se Linux, allora è bene avere anche un locale di sistema impostato su utf8, come "en_US.utf8".

E, per sicurezza, inviare un comando "SET NAMES UTF8" a mysql subito dopo la connessione.

(db set di caratteri/fascicolazione deve essere anche utf8)

1

La domanda sotto risolto il problema.

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

E per l'intero database, se possibile, sarebbe ancora meglio. Usa SET NAMES utf8 –

Problemi correlati