1

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.

Vit Kos
  • 5,535
  • 5
  • 44
  • 58
  • 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 Answers1

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