Сортировка SQL Server для конкретного языка - PullRequest
2 голосов
/ 15 апреля 2011

У меня есть рабочий сервер SQL Server 2008 R2, есть несколько баз данных, по одной для каждого клиента, каждая в другой стране.

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

Первая проблема заключается в том, что я не смог точно определить, какой порядок сортировки мне следует использовать.Я думаю, что Cyrillic_General_CI_AS является правильным.Другими словами, я думаю, что болгарский язык нечувствителен к регистру и чувствителен к акценту .Иногда они используют английский, но я думаю, что это не проблема.

Другой вопрос, который у меня есть, будет ли он работать правильно с этим сопоставлением, если сервер использует Polish_CI_AS , и поэтому системные базы данных, такие как tempdb, используют его какну, может быть, для такой смешанной среды будет лучше использовать менее специфичные параметры сортировки?

Безопасно ли изменять параметры сортировки в рабочей базе данных?

1 Ответ

2 голосов
/ 15 апреля 2011

Я могу попытаться ответить только на часть ваших вопросов.Согласно всезнающей Википедии, да, болгарский язык использует кириллицу (это, вероятно, не ваш вопрос).Но ваше утверждение о том, что

болгарский язык не чувствителен к регистру и акценту

, не имеет смысла для меня.Такие языки, как английский, не чувствительны ни к регистру (ни), ни к акценту (не).Это просто выбор дизайна того, как вы хотите, чтобы SQL выполнял внутреннее сравнение строк по умолчанию (может быть переопределено при необходимости путем приведения параметров сортировки).

Короче говоря, я бы согласился, что Cyrillic_General_CI_AS - это то, что вам нужно, есливы используете "_CI_AS" для всех других ваших баз данных.

Что касается других ваших вопросов, возможно, кто-то еще может помочь.

...