Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Несколько языковых БД в SQL Server 2008  [new]
snupy
Member

Откуда:
Сообщений: 4
Добрый день!
У меня такой вопрос, может кто то сталкивался:
Есть SQL Server2008, на котором необходимо использовать несколько БД с разными языками (например русский, немецкий, французский). Чтобы SQL распознавал один язык (отличный от английского) необходимо настроить в Winows пункт "Дата, время, язык и региональные стандарты".
А возможно настроить несколько языков?

Если есть документация либо источник, подскажите, пожалуйста?
Заранее спасибо!
16 ноя 11, 15:45    [11607103]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31984
snupy
Чтобы SQL распознавал один язык (отличный от английского) необходимо настроить в Winows пункт "Дата, время, язык и региональные стандарты".
Вроде не надо ничего настраивать, сиквел прекрасно хранит байты из любого языка.
16 ноя 11, 15:51    [11607175]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
автор
Чтобы SQL распознавал один язык (отличный от английского) необходимо настроить в Winows пункт "Дата, время, язык и региональные стандарты".


В винде ничего настраивать не надо. А на стороне сервера Вам нужны юникодные типы данных.
16 ноя 11, 16:00    [11607267]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
snupy
Member

Откуда:
Сообщений: 4
А если пользователи будут подключаться из клиента непосредственно к своей базе, т.е. из Германии к своей БД, из Франции к своей. SQL будет распозновать их кодировку? Сам сервер в России, язык русский.
16 ноя 11, 16:00    [11607275]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
snupy
Member

Откуда:
Сообщений: 4
alexeyvg,

А если пользователи будут подключаться из клиента непосредственно к своей базе, т.е. из Германии к своей БД, из Франции к своей. SQL будет распознавать их кодировку? Сам сервер в России, язык русский.
16 ноя 11, 16:03    [11607307]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
snupy,

BOL->Unicode Basics
16 ноя 11, 16:03    [11607319]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31984
snupy
alexeyvg,

А если пользователи будут подключаться из клиента непосредственно к своей базе, т.е. из Германии к своей БД, из Франции к своей. SQL будет распознавать их кодировку? Сам сервер в России, язык русский.
Пользователи будут передавать SQL-ю данные в правильных (своих) кодировках. Делать это можно по разному, но сейчас обычно просто используют юникод и проблем нет.

При необходимости различать кодировки на сиквеле для сравнений и сортировок нужно будет в базах настраивать соответствующие коллейшены.
16 ноя 11, 16:07    [11607368]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
snupy
Member

Откуда:
Сообщений: 4
alexeyvg, pkarklin

Спасибо Вам большое. Я правда пока не очень хорошо дружу с SQL, а Юникод настраивается (выбирается) непосредственное в sql сервере? и если в БД записи у которых тип данных не соответствует Юникоду, то такие записи в БД преобразовываются?
16 ноя 11, 16:30    [11607628]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31984
snupy
Юникод настраивается (выбирается) непосредственное в sql сервере? и если в БД записи у которых тип данных не соответствует Юникоду, то такие записи в БД преобразовываются?
Да, тип данных юникод выбирается в таблицах на sql сервере, если предполагается раболта со многими языками.

Если тип данных не соответствует Юникоду, то преобразовываются.
16 ноя 11, 16:46    [11607785]     Ответить | Цитировать Сообщить модератору
 Re: Несколько языковых БД в SQL Server 2008  [new]
oiyte
Guest
snupy
"Дата, время, язык и региональные стандарты"


С этим сложнее.

TimeZone для каждой БД не установишь.
Придётся использовать GETUTCDATE(), и уже в клиентской программе учитывать TimeZone

Также в клиентской программе придётся устанавливать SET LANGUAGE для каждой сессии, для удобного использования названий дней недели, месяцев.

И, наверное, не стоит создавать отдельные БД отдельных стран\языков с языковым COLLATION отличным от COLLATION tempdb.
16 ноя 11, 22:06    [11609267]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить