Поделиться через


Работа с параметрами сортировки (SQL Server Compact)

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

SQL Server Compact поддерживает параметры сортировки Windows. Список имен параметров сортировки Windows, поддерживаемых в SQL Server Compact, см. разделе Поддерживаемые параметры сортировки (SQL Server Compact).

Выпуск SQL Server Compact 3.5 поддерживает установку параметров сортировки на уровне базы данных. Другими словами, все символьные столбцы (столбцы с типом данных nchar, nvarchar и ntext) в пользовательских таблицах базы данных имеют такие же настройки учета регистра, какие заданы на уровне базы данных. Кроме того, индексы в символьных столбцах имеют те же настройки учета регистра, какие заданы на уровне базы данных.

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

Соединение с базами данных, учитывающими регистр

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

Выпуск SQL Server Compact 3.5 поддерживает новое свойство Boolean строки соединения «Case Sensitive» или «SSCE:Case Sensitive» для определения, учитывают ли параметры сортировки базы данных регистр. Во время соединения с существующей базой данных SQL Server Compact со свойством «Case Sensitive» в строке соединения SQL Server Compact 3.5 не учитывает этот параметр. Другими словами, свойство «Case Sensitive» является параметром времени создания базы данных и не учитывается при соединении с существующей базой данных. Если учет регистра не указан при создании базы данных, по умолчанию создается база данных, не учитывающая регистр.

Свойство «Case Sensitive» является новой функцией в SQL Server Compact 3.5 и не поддерживается в более ранних версиях.

Создание баз данных, учитывающих регистр

Версия SQL Server Compact 3.5 поддерживает указание параметров сортировки с учетом регистра для новых баз данных только через вызовы API.

Новое свойство Boolean строки соединения «Case Sensitive» или «SSCE:Case Sensitive» можно использовать для определения, учитывают ли параметры сортировки базы данных регистр. Точно так же новое свойство DBPROP_SSCE_DBCASESENSITIVE как часть набора свойств DBPROPSET_SSCE_DBINIT определяет, учитывают ли параметры сортировки базы данных регистр.

Если свойству «Case Sensitive» присвоить значение true, в базе данных перестраиваются индексы в символьных столбцах.

Еще одним способом указать параметры сортировки для новой базы данных является предложение Предложение COLLATE (SQL Server Compact) инструкции Инструкция CREATE DATABASE (SQL Server Compact). В этом случае единственным параметром будет CI (без учета регистра).

Важно!

Если создается база данных с параметрами сортировки с учетом регистра, ее нельзя открыть в прежних версиях SQL Server Compact, включая SQL Server Compact 3.5.

Репликация слиянием и параметры сортировки с учетом регистра

Издатели SQL Server и подписчики SQL Server Compact поддерживают репликацию слиянием независимо от настроек учета регистра. В целях обратной совместимости явно не блокируется ни один сценарий.

Версия SQL Server Compact 3.5 поддерживает репликацию баз данных SQL Server Compact, учитывающих регистр, как в серверных базах данных с учетом регистра, так и без учета регистра. В следующей таблице приводятся все возможные сценарии.

Учет регистра клиентской базы данных SQL Server Compact Учет регистра базы данных SQL Server Поддерживается

CI (без учета регистра)

CI

Да

CI

CS (с учетом регистра)

Да

CS

CS

Да

CS

CI

Да

Дополнительные сведения о репликации слиянием см. в разделе Использование репликации слиянием. Дополнительные сведения о создании базы данных, учитывающей регистр, с помощью объекта Replication см. в разделе Как создать базу данных с помощью объекта Replication (программно).

См. также

Основные понятия

Вопросы международного использования (SQL Server Compact)

Справка и поддержка

Получение помощи (SQL Server Compact 3.5 с пакетом обновления 1)