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

Откуда: Москва
Сообщений: 21
Собственно проблема вот в чем
Есть система MS System Center Configuration Manager 2007. Она хранит результаты своей работы в БД на MS SQL 2008. База стоит на одном сервере с системой (Оперционка Windows 2003 x86)

Я ставлю новый SQL Сервер 2008R2 + SQL 2008 R2 (все x64). параметры SQL такие же как на старом сервере (Collation Latin1_General_CI_AS). Переношу БД (что backup+restore, что detach/attach). Перепривязываю базу к серверу SCCM и получаю удивительный эффект.

В таблицах те поля которые содержали русские буквы в таблицах отображаются в системе SCCM по-русски в Query analyzer они выглядят так
!Software - Novell
Adobe Flash Player (ñîâìåùåííûé)
Adobe Reader before 11.x
Adobe Reader up to 11.0.9
ÀÊÁ Ðîñåâðîáàíê
ÄÎ Âàâèëîâà 13
ÄÎ Âàðøàâêèé

А все новые значения записываются вопросами вместо русских букв.

Более того если выполнить запрос на БД к старому серверу select CollectionName collate Cyrillic_General_CI_AS from Collections
получим такие значения
Ф-л Екатеринбург
Ф-л Новосибирск
Ф-л Ростов
Ф-л Самара
Ф-л Санкт-Петербург
Ф-л Челябинск
ЦО

Точно такой же запрос к БД на новом сервере выдает
AEA ?inaa?iaaie
AI Aaaeeiaa 13
AI Aa?oaaeee
AI Aieai?oeianeee
AI Aieieieaineee
AI ?ycaineee i?iniaeo
AI Eaieia?aaneee
AI Eaieineee 45 (OII-3)

Более того любой update или insert на новом сервере приводит к тому что в поля записываются знаки вопроса вместо русских букв.
На старом сервере все корректно.

Аналогичный эффект достигается на всех серверах связки Win2008R2+Sql 2008 (R2) на которую я эту базу смого установить
Помогите советом, что смотреть в настройках нового сервера.
Еще раз повторю, что все настройки нового и старого сервера (которые я мог проверить) и БД одинаковые
Collation Latin1_General_CI_AS. Настройки таблиц при переносе измениться не могли
2 мар 15, 18:02    [17333570]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4893
Ufer,

Проверьте совпадают ли
1) Коллейшины системных баз
2) Языковые настройки сервера по умолчанию
2 мар 15, 18:07    [17333601]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
Ufer,

у вас проблемные поля неюникодные,
база некириллическая,
коллэйшены в столбцах тоже.
это на нынешнем.
а на прежнем или сама база имеет кириллический коллэйшен,
или в столбцах он явно указан.

при бэкапе-ресторе коллэйшен сохраняется,
так что где-то нам говорят неправду.

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

вернее, 2 картинки. со старого сервера и с нового
select serverproperty ('collation') as srvr_collation,
       DATABASEPROPERTYEX ('MyDB','collation') as db_collation;
exec sp_help 'dbo.MyTable';


от sp_help можете только второй резалт-сет показать,
где коллэйшены строковых столбцов в явном виде
2 мар 15, 18:31    [17333719]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Совпадают.
Я новый SQL сервер
1. Сначала менял collation с Cyrillic_General_CI_AS на Latin1_General_CI_AS безе переустановки сервера через setup
2. Снес нафиг сервер и поставил заново с collation Latin1_General_CI_AS. Единственно сейчас не помню ставил ли флажок Ascend Sensitive
3. Потом планомерно сравнивал sp_Configure и Facets на обоих серверах. Все одинаково.

Настройки в переносимой базе измениться не могли в процессе переноса

И что удивительно. Detach/Attach этой злосчастной базы с исходного сервера на любой другой дает этот эффект.
Даже на простом select/update
2 мар 15, 18:32    [17333724]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
Ufer,

картинками давайте.
или пускай кто другой поверит, меня подобными убеждениями не проканать
2 мар 15, 18:37    [17333753]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
Ufer,

мне ваши настройки на уровне сервера, кстати, фиолетовы,
это потом огребете на несовпадении коллэйшена TempDB с остальным.
показывайте коллэйшен базы и явные коллэйшены столбцов в таблицах
2 мар 15, 18:39    [17333767]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Это что стало

К сообщению приложен файл. Размер - 136Kb
2 мар 15, 18:40    [17333772]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Это что было

К сообщению приложен файл. Размер - 133Kb
2 мар 15, 18:41    [17333780]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Кстати это только одна таблица. Там их множество и все с такой проблемой
2 мар 15, 18:46    [17333803]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
Ufer,

при вашем-то раскладе вообще нигде кириллицы не будет
покажите запрос, выдающий кириллицу, плиз.
тоже картинкой
2 мар 15, 18:49    [17333822]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21


К сообщению приложен файл. Размер - 133Kb
2 мар 15, 18:53    [17333843]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21


К сообщению приложен файл. Размер - 142Kb
2 мар 15, 18:53    [17333845]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21


К сообщению приложен файл. Размер - 131Kb
2 мар 15, 18:53    [17333847]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Прикольно да?

Я уже вообще склоняюсь к мысли о разнице обработки не юникодовых полей в Windows 2003 и 2008.
Ведь collation При установке сервера берется из ОС (т.е. системный)
2 мар 15, 18:56    [17333858]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
Ufer,

я вижу только один возможный ход событий:
в полях был прописан кириллический коллэйшен
(ну или был унаследован коллэйшен базы, и он был кириллический),
данные занесли еще кириллицей,
а потом кто-то не поленился коллэйшен сменить.
каждому столбцу прописали, не лень же было...
вот тогда получилось то, что имеете.
2 мар 15, 19:07    [17333903]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
значит, если теперь сменить насильно коллэйшен обратно, каждому столбцу,
то ранее занесенные данные получите обратно кириллицей.
то, что занесли после, получите вопросиками, да
2 мар 15, 19:09    [17333914]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Увы, вы не правы.

Все это работает прямо здесь и сейчас
insrert на оригинальную базу вставляет поле строку с русским наименованием, а эта же команда на перенесенной базе на новом сервере встаялет знаки вопроса

Вот и ломаю мозг. Все вокруг говорят что не может быть, а оно есть.
2 мар 15, 19:10    [17333920]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Могу показать если хотите
2 мар 15, 19:11    [17333927]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
да, хочу.
из дома через тим вьюер, устраивает?
сейчас я убегаю и в любом случае тим вьюер здесь не пашет, нас "надежно защитили от внешнего мира"
(у меня тоже тест проделан на 2008 R2 на вин сервере 2003 sp2, ваше ну никак не воспроизводится)

Microsoft SQL Server 2008 R2 (SP3) - 10.50.6000.34 (Intel X86) Aug 19 2014 12:21:07 Copyright (c) Microsoft Corporation Developer Edition on Windows NT 5.2 <X86> (Build : )
2 мар 15, 19:15    [17333953]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2423
Ufer,

команду на вставку данных покажите
2 мар 15, 19:23    [17333987]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Нас тоже.

Но можно что нибудь придумать.

А пока картинки

К сообщению приложен файл. Размер - 140Kb
2 мар 15, 19:30    [17334017]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21


К сообщению приложен файл. Размер - 141Kb
2 мар 15, 19:30    [17334022]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Модератор: Уважаемый Ufer, освойте кнопки Ctrl + C / Ctrl + V и прекратите постить никому не нужные скриншоты.


Сообщение было отредактировано: 2 мар 15, 19:41
2 мар 15, 19:40    [17334069]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
o-o
Guest
Гавриленко Сергей Алексеевич,
Возможно, отгадка лежит на картинке, надо только поискать. Вот вы лично в состоянии сложить в неюникодную колонку с некириллическим коллэйшеном кириллицу так, чтобы туда легли не вопросительные знаки? Да хоть юникодом передавай, не лягут...

Ufer, все же вы нас несколько дезинформировали, у вас просто 2008, не 2008 R2.
Может, у него был такой глюк? Вы же потом перешли на более старшую версию, был sp1, стал sp2. У меня просто 2008 отродясь не было, неужели это он такой кривой?
2 мар 15, 20:34    [17334312]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с кодировкой русских букв после переноса базы  [new]
Ufer
Member

Откуда: Москва
Сообщений: 21
Вы неправы.

В начале топика в первом же предложении описал начальные условия
Было Win 2003 + SQL 2008 все x86
Стало Win 2008 R2 + SQL 2008R2 все x64
2 мар 15, 21:51    [17334566]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить