2010-06-09 12 views
8

Znaki nieangielskie są pomieszane w kolumnie tekstowej. arabski tekst wygląda następująco:Jak przechowywać znaki spoza angielskiego?

Ù † Ù € ج٠€ Ù ... Ù ‡ س٠€ usu Ù € € U „

Jak przechowywać nie- znaki angielskie poprawnie?

Odpowiedz

10

Należy rozważyć użycie utf8 do przechowywania tekstu.

Można to zrobić przy tworzeniu bazy danych:

CREATE DATABASE mydb 
    DEFAULT CHARACTER SET utf8 
    DEFAULT COLLATE utf8_general_ci; 

Można również skonfigurować MySQL podczas instalacji lub przy starcie do wykorzystania utf8 (zobacz Mysql manual)

Strony podręcznika MySQL obejmować wszystkie aspekty CharacterSet i sortowania: http://dev.mysql.com/doc/refman/5.0/en/charset.html

zestaw znaków połączenia mogą być zmieniane przez

SET CHARACTER SET utf8 

Więcej szczegółów here oraz w rozdziale Character set support

2

Z jakiego systemu operacyjnego korzystasz?

Jeśli chodzi o Linuksa, to dobrze jest mieć ustawione ustawienia regionalne systemu na utf8, np. "En_US.utf8".

I, na pewno, wydaj polecenie "SET NAMES UTF8" do mysql zaraz po połączeniu.

(db zestaw znaków/sortowania musi być również utf8)

1

Zapytanie poniżej rozwiązać ten problem.

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

I dla całej bazy danych, jeśli to możliwe, byłoby jeszcze lepiej. Użyj SET NAMES utf8 –

Powiązane problemy