I need to store data in my MySQL db in 3 languages : French,Russian and Romanian. What encoding should i use for that? I used utf8_general_ci but i have problems with encoding non-latin letters with it. Thanks.
Asked
Active
Viewed 376 times
1
-
utf8 should be fine; please post details of the problems you are having. – eggyal May 10 '12 at 10:59
-
UTF-8 is a perfect encoding for any language on Earth. Perhaps you're having collation issues (e.g., unexpected alphabetical order and the like). Can you please clarify? – Álvaro González May 10 '12 at 11:00
-
For ex. Russian characters stored like strange cyrillic symbols, and Romanian and French special letters are transformed to smth like © and different other things – Vit Kos May 10 '12 at 11:03
-
Show the result of `CREATE TABLE` statement of your table – Shiplu Mokaddim May 10 '12 at 11:04
-
1@VitKos: Make sure that your application and MySQL are talking to eachother in UTF-8 too (e.g. connection character set, encoding of strings in application, etc.) – eggyal May 10 '12 at 11:04
-
MySQL will never generate HTML entities like `©` by its own. I don't think it even has such feature. I'm pretty sure your problem is in your code (PHP or whatever). – Álvaro González May 10 '12 at 11:05
-
@eggyal Yes,they are.. setting those properties when opening the connection – Vit Kos May 10 '12 at 11:13
-
i think this could help you http://stackoverflow.com/questions/202205/how-to-make-mysql-handle-utf-8-properly – Rohit Choudhary May 10 '12 at 11:14
-
Thanks all for help, utf8_unicode_ci did the thing. – Vit Kos May 10 '12 at 11:19
1 Answers
1
utf8_unicode_ci was the right choice, also as was stated by @eggyal application and MySQL should comunicate using utf8

Vit Kos
- 5,535
- 5
- 44
- 58