Набор символов - это подмножество всех написанных глифов. Кодировка символов определяет, как эти символы отображаются в числовые значения. Некоторые кодировки символов, такие как UTF-8 и UTF-16, могут кодировать любой символ в универсальном наборе символов. Другие, такие как US-ASCII или ISO-8859-1, могут кодировать только небольшое подмножество, поскольку они используют 7 и 8 бит на символ, соответственно. Поскольку многие стандарты определяют как набор символов, так и кодировку символов, термин «набор символов» часто заменяется словом «кодировка символов».
Параметры сортировки содержат правила, которые определяют, как символы могут сравниваться для сортировки. Правила сопоставления могут зависеть от конкретной локали: правильный порядок двух символов зависит от языка.
Выбор набора символов и параметров сортировки зависит от того, является ли ваше приложение интернационализированным или нет. Если нет, на какой регион вы ориентируетесь?
Чтобы выбрать набор символов, который вы хотите поддерживать, вы должны рассмотреть ваше приложение. Если вы храните вводимые пользователем данные, может быть трудно предвидеть все локали, в которых ваше программное обеспечение в конечном итоге будет использоваться. Чтобы поддержать их всех, лучше всего было бы поддерживать UCS (Unicode) с самого начала. Тем не менее, есть цена для этого; для многих западноевропейских символов теперь требуется два байта на символ вместо одного.
Выбор правильного сопоставления может повысить производительность, если ваша база данных использует сопоставление для создания индекса, а затем использует этот индекс для предоставления отсортированных результатов. Однако, поскольку правила сортировки часто зависят от локали, этот индекс будет бесполезен, если вам нужно отсортировать результаты в соответствии с правилами другой локали.