Кодировка символов в таблицах для мультиязычного проекта

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение samdark »

utf8mb4 и collation utf8mb4_unicode_ci - на сегодняшний день являются оптимальными mysql кодировками для мультиязычных сайтов?
Смотря какова цель.
Что насчет utf8mb4_unicode_520_ci?
http://stackoverflow.com/questions/1890 ... ode-520-ci
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение zelenin »

Faenir писал(а):utf8mb4 и collation utf8mb4_unicode_ci - на сегодняшний день являются оптимальными mysql кодировками для мультиязычных сайтов?
utf8mb4 - единственная, полноценно поддерживающая utf8
Faenir писал(а):Что насчет utf8mb4_unicode_520_ci?
это collation - тип сортировки юникодных символов. Непосредственно к хранению не имеет отношения.
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение Faenir »

samdark писал(а):Смотря какова цель.
Цель: не иметь проблем с кодировкой в будущем, если понадобятся экзотические языки, сортировка данных и т.п.
Про разницу в производительности с general_ci, utf8 vs utf8mb4 и т.п. читал.
Вообщем, прочитав кучу инфы, остановился на utf8mb4 + utf8mb4_unicode_ci, но потом откопал еще utf8mb4_unicode_520_ci - и пока так и не понял, лучше использовать его или остановиться на utf8mb4_unicode_ci.
zelenin писал(а):это collation - тип сортировки юникодных символов. Непосредственно к хранению не имеет отношения.
Это я понимаю. Интересует именно utf8mb4_unicode_520_ci vs utf8mb4_unicode_ci.

Я правильно понял, что utf8mb4_unicode_520_ci - это просто более свежая версия utf8mb4_unicode_ci и она просто содержит больше символов?
Последний раз редактировалось Faenir 2016.12.16, 14:41, всего редактировалось 1 раз.
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение zelenin »

Faenir писал(а):Это я понимаю. Интересует именно utf8mb4_unicode_520_ci vs utf8mb4_unicode_ci.
a vs b удобно в гугл вбивать (наверняка первая ссылка будет на SO, где отвечают именно на такую постановку вопроса)
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение Faenir »

zelenin писал(а):
Faenir писал(а):Это я понимаю. Интересует именно utf8mb4_unicode_520_ci vs utf8mb4_unicode_ci.
a vs b удобно в гугл вбивать (наверняка первая ссылка будет на SO, где отвечают именно на такую постановку вопроса)
Естественно я гуглил это.
Вот цитата с оверфлова:
Well you shall need to read in to the documentation. I can't tell you what you should be using because every project is different.
Тут же я спрашиваю про конкретный проект, в котором нужна мультиязычность и сортировка на любом языке.
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение zelenin »

я вижу так:
utf8_unicode_ci (with no version named) is based on UCA 4.0.0 weight keys >(http://www.unicode.org/Public/UCA/4.0.0 ... -4.0.0.txt).

utf8_unicode_520_ci is based on UCA 5.2.0 weight keys (http://www.unicode.org/Public/UCA/5.2.0/allkeys.txt).
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение Faenir »

Ок, почему там utf8 а не utf8mb4?
Почему @version 4.0.0 Edited: 2003-Nov-01, а @version 5.2.0 Date: 2009-09-22?
Faenir писал(а):Я правильно понял, что utf8mb4_unicode_520_ci - это просто более свежая версия utf8mb4_unicode_ci и она просто содержит больше символов?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение zelenin »

Faenir писал(а):Ок, почему там utf8 а не utf8mb4?
где?
Faenir писал(а):Почему @version 4.0.0 Edited: 2003-Nov-01, а @version 5.2.0 Date: 2009-09-22?
ну обычно так и бывает - более свежая версия имеет более свежую дату
Faenir писал(а):Я правильно понял, что utf8mb4_unicode_520_ci - это просто более свежая версия utf8mb4_unicode_ci и она просто содержит больше символов?
это более свежий collation, основанный на более свежей таблице collation от unicode, актуализированной в 2009 году.
Вообще, как я понимаю, версия таблицы сравнения = версии юникода. А свежая версия юникода 9 - stable и 10 - dev, которые также имеют более свежие collation.
http://www.unicode.org/Public/UCA/
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение Faenir »

zelenin писал(а):где?
тут:
utf8_unicode_ci (with no version named) is based on UCA 4.0.0 weight keys >(http://www.unicode.org/Public/UCA/4.0.0 ... -4.0.0.txt).

utf8_unicode_520_ci is based on UCA 5.2.0 weight keys (http://www.unicode.org/Public/UCA/5.2.0/allkeys.txt).
zelenin писал(а):ну обычно так и бывает - более свежая версия имеет более свежую дату
Упс, мне показалось, что там 2013, а не 2003.
zelenin писал(а):это более свежий collation, основанный на более свежей таблице collation от unicode, актуализированной в 2009 году.
Вообще, как я понимаю, версия таблицы сравнения = версии юникода. А свежая версия юникода 9 - stable и 10 - dev, которые также имеют более свежие collation.
http://www.unicode.org/Public/UCA/
Вообщем, если у меня есть в базе utf8mb4_unicode_ci и utf8mb4_unicode_520_ci, то логичнее будет выбрать именно utf8mb4_unicode_520_ci? Других версий я у себя не вижу, из utf8mb4_unicode - только эти две.
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: Кодировка символов в таблицах для мультиязычного проекта

Сообщение Faenir »

Спасибо.
Ответить