Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Server Collation / 18 сообщений из 18, страница 1 из 1
30.11.2018, 09:24
    #39740672
Frequency
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Помогите подобрать нужный Server Collation. Некоторые буквы сервер воспринимает как ? . Как подобрать нужный Collation Type
...
Рейтинг: 0 / 0
30.11.2018, 10:08
    #39740689
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
FrequencyНекоторые буквы сервер воспринимает как ?
некоторые буквы это типа кириллические?
если да, то какой-нибудь Cyrillic_General_CI_AS
P.S. после смены серверного коллэйшена
в имеющейся уже базе у вас останется прежний коллэйшен базы
...
Рейтинг: 0 / 0
30.11.2018, 10:28
    #39740698
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Frequency,

не забудьте потом установить COLLATE у баз model и tempdb.
Или только в model и перегрузите сервер.
Иначе будете получать конфликты при использовании текстовых полей временных таблиц.
...
Рейтинг: 0 / 0
30.11.2018, 10:33
    #39740702
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
iapFrequency,

не забудьте потом установить COLLATE у баз model и tempdb.
Или только в model и перегрузите сервер.
Иначе будете получать конфликты при использовании текстовых полей временных таблиц.
думаете, серверный коллэйшен не отразится на базах tempdb/model?
...
Рейтинг: 0 / 0
30.11.2018, 10:40
    #39740709
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
iapне забудьте потом установить COLLATE у баз model и tempdb.

даже лучше так:
вы сами-то пробовали сменить коллэйшен системных баз без ребилда ?
вы попробуйте, получите интересное сообщение
...
Рейтинг: 0 / 0
30.11.2018, 10:48
    #39740716
Frequency
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
[quot Yasha123]iapвы сами-то пробовали сменить коллэйшен системных баз без ребилда ?


Так можно поменять.

ALTER DATABASE UB_COMMON SET SINGLE_USER WITH ROLLBACK IMMEDIATE;


ALTER DATABASE UB_COMMON SET MULTI_USER WITH ROLLBACK IMMEDIATE;


Нет не кирилица латынь.

Код: sql
1.
ə , ğ , ö , i , ü
...
Рейтинг: 0 / 0
30.11.2018, 10:49
    #39740717
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Yasha123iapне забудьте потом установить COLLATE у баз model и tempdb.

даже лучше так:
вы сами-то пробовали сменить коллэйшен системных баз без ребилда ?
вы попробуйте, получите интересное сообщениеКакая разница КАК это сделать?
НАДО, и всё.
Без ребилда нельзя? Значит, с ребилдом.
COLLATE tempdb должен быть совместимым с COLLATE рабочей базы.
А tempdb удаляется при каждом shutdown сервера и создаётся при старте.
Любая создаваемая база строится на основе базы model.

P.S. У нас администратор сменил COLLATE в model и tempdb буквально на днях.
Однако, я-то не администратор. Так что подробности у меня не спрашивайте.
...
Рейтинг: 0 / 0
30.11.2018, 10:49
    #39740718
Frequency
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
ə , ğ , ö , i , ü
...
Рейтинг: 0 / 0
30.11.2018, 10:54
    #39740725
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Frequency
Так можно поменять.

ALTER DATABASE UB_COMMON SET SINGLE_USER WITH ROLLBACK IMMEDIATE;

вам не видно выделенное жирным?
или UB_COMMON системная база?
вы совет iap-а читали?
ну попробуйте выполнить предложенное им
Код: sql
1.
alter database model collate Cyrillic_General_CI_AS


или
Код: sql
1.
alter database tempdb collate Cyrillic_General_CI_AS
...
Рейтинг: 0 / 0
30.11.2018, 10:59
    #39740728
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
iapКакая разница КАК это сделать?

да такая и разница.
он спросил о смене СЕРВЕРНОГО коллэйшена.
если вы не в курсе, то серверный коллэйшен меняется ребилдом СИСТЕМНЫХ БАЗ.
если вы и о системных базах не слышали, как Frequency, то базы темпдб и модел как раз системные.
и вот вы ТС-у и отвечаете:
сменив коллэйшен серверу (т.е. базам мастер, мсдб, ТЕМПДБ И МОДЕЛ)
не забудьте сменить коллэйшен базам ТЕМПДБ И МОДЕЛ.
а теперь объясните мне, как же можно было "забыть", если только что это было сделано?
...
Рейтинг: 0 / 0
30.11.2018, 11:00
    #39740729
Frequency
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Могу конечно так , но всю базу в процедурах и view менять долго.

А можно создать таблицу где столбец с типом nvarchar() и префиксом N'' ?
...
Рейтинг: 0 / 0
30.11.2018, 12:29
    #39740783
WarAnt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Frequency,

nvarchar это и есть N,
N добавляется в запросах чтобы сервер понял что ваша строка юникодная
SELECT 'ת' - не уникодная, строка будет воприниматься в коллейшене сервера
SELECT N'ת' - юникодная
...
Рейтинг: 0 / 0
30.11.2018, 12:56
    #39740802
256k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
WarAntFrequency,

nvarchar это и есть N,
N добавляется в запросах чтобы сервер понял что ваша строка юникодная
SELECT 'ת' - не уникодная, строка будет воприниматься в коллейшене сервера
SELECT N'ת' - юникодная

угу, это и есть ответ на вопрос ТС, без ребилдов и пр. хрени - юникод дата типы надо использовать, а не тасовать collation
...
Рейтинг: 0 / 0
30.11.2018, 13:06
    #39740806
Massa52
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
256k,
Не все так просто. Если создавать временные таблицы в tempdb, то сравниваться nvarchar поля в основной базе и временной не будут.
Надо будет каждый раз приводить их к одному коллейшену.
...
Рейтинг: 0 / 0
30.11.2018, 13:08
    #39740808
Frequency
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Я понял спасибо
...
Рейтинг: 0 / 0
30.11.2018, 14:04
    #39740873
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
Massa52256k,
Не все так просто. Если создавать временные таблицы в tempdb, то сравниваться nvarchar поля в основной базе и временной не будут.
Надо будет каждый раз приводить их к одному коллейшену.Приводить к одному коллейшену слишком медленно, будет без индексов.

Нормальная практика - создавать nvarchar поля во временной базе с правильным коллейшеном, таким же, как соотв поля в основной. И непонятно, зачем делать по другому, в чём профит, что бы потом заморачиваться с серверным коллейшеном, или что бы для гениального творения разработчиков непременно требовался отдельный сервер со своими, индивидуальными, установками?
...
Рейтинг: 0 / 0
30.11.2018, 16:27
    #39741096
wadegwadeg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
alexeyvgMassa52256k,
Не все так просто. Если создавать временные таблицы в tempdb, то сравниваться nvarchar поля в основной базе и временной не будут.
Надо будет каждый раз приводить их к одному коллейшену.Приводить к одному коллейшену слишком медленно, будет без индексов.
Вообще говоря, если приводить к целевому коллейшену - индекс хвататься будет, но творить подобное без крайней необходимости типа непреодолимого наследия на том же сервере... в-общем, расстрел на месте, это вот да.[/quot]
...
Рейтинг: 0 / 0
30.11.2018, 23:24
    #39741331
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Server Collation
wadegwadegalexeyvgПриводить к одному коллейшену слишком медленно, будет без индексов.
Вообще говоря, если приводить к целевому коллейшену - индекс хвататься будетДа, лучше было сказать "неправильно приводить".
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Server Collation / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]