powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Изменение collation
6 сообщений из 6, страница 1 из 1
Изменение collation
    #32054877
monic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем !
Может кто подскажет есть ли способ наиболее безболезненно изменить collation базы ?
Текущее значение SQL_Latin1_General_CP1_Cl_AS.
Через BDE всё работает нормально, но в QA и при выгрузке в Excel - бардак.
...
Рейтинг: 0 / 0
Изменение collation
    #32054883
LG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно проставить нужный тебе collation в запросе.
Что-то типа
Код: plaintext
1.
SELECT XXX COLLATE YYY
FROM ZZZ
...
Рейтинг: 0 / 0
Изменение collation
    #32054962
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может и версию сервера скажите ?
...
Рейтинг: 0 / 0
Изменение collation
    #32055011
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Буквально вчера тоже самое помогал другу делать. У него вообще прикол получился, доинсталировался он Виндов разных и SQL-серверов, что в итоге у него Master и TempDB в кодировке Cyrilic_General оказались, а своя БД в SQL_Latin1_General_CP1251. Обнаружилось случайно - он на свою БД пытался поставить мою утилитку, которая в том числе лопатит системные обьекты БД и пользуется временными таблицами, кое где используя условия сравнения значений varchar полей временных и системных таблиц. Естественно в моей проге не предполагалось, что будет такой супнабор кодировок использоваться, и сервак ругался, что не может использовать varchar поля из за разной их COLLATE. Прикольно, что у друга это не разу не вылезло, потому как у него нет кода, где пытались бы сравниваться varchar поля между его таблицами и временными таблицами. Оставлять свою БД в текущей collation он не захотел, поэтому пришлось ее менять. Не знаю, правильно ли мы сделали, может конечно есть способ и получше, но мы просто заскриптовали его БД без упоминания в скриптах о всяких COLLATE, создали новую БД с правильной COLLATE, выполнили скрипт и перегнали со старой БД данные в созданную. Теперь вроде COLLATE в БД правильная, прога моя с ней работает, друг доволен.
...
Рейтинг: 0 / 0
Изменение collation
    #32055261
kinuski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надо создать полный script базы со всеми деталями (юзеры, индексы, etc.), исправить в нем все вхождения неправильного collation на требуемый (например, Cyrillic_General на Latin1_General). Создать новую базу данных с требуемым collation, с помощью script'а создать все объекты. Затем с помощью DTS или select переписать даные в новую базу. Просто DTS не годится, т.к. он создаст поля в таблицах с таким же collation, как и исходные данные. При переносе же данных в существующие таблицы в новой БД collation изменится. Все вышесказанное справедливо для SQL Server 2000.
...
Рейтинг: 0 / 0
Изменение collation
    #32055468
monic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем !
Извините, был в коммандировке, доступа к сети не было.
1. --> Glory: SQL2000 Enterprise Edition on Win2000 Server
2. --> LG: спасибо, попробовал разные значения collation, но не могу подобрать, чтоб по русски вышло :-(
3. --> ASCRUS и kinuski: спасибо, придется воспользоваться, если ничего не выйдет с вариантом LG
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Изменение collation
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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