powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Как иероглифы эти убрать...)))
4 сообщений из 4, страница 1 из 1
Как иероглифы эти убрать...)))
    #32505755
iusup
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БД Парадокс
СУБД Sybase

В проге данные на русском языке правильно показывает
а в ISQL какие то иероглифы
В чём дело....? Как поправить...? )
В Sybase SQL Anywhere 5.0 был транслятор через ОДВС
А теперь на ASA 9 перешел и проблемма ...)))
Думаю понятно изложил...)))
...
Рейтинг: 0 / 0
Как иероглифы эти убрать...)))
    #32505995
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Переход с 5ки на 9-ку наверняка произвел без смены кодировок с 866 на 1251, поэтому и возникли небольшие проблемки.
В 5-ке проблемы конвертации кодировок лежали на клиенте, начиная с 8-ки, в 7-ке транслятор еще был, эту заботу переложили на сервер, добавив в строку подключения параметр 'charset', можно выключить эту особенность сервера инициировав запуск с параметром -ct. Если в параметрах соединения не указан данный параметр, то считается, что он определяется кодировкой базы и следовательно перекодировать не надо, в результате в ISQL у тебя данные отражаются в кодировке 866, а в программе, наверное написанной на дельфи, по прежнему стоит LangDriver cp866, она и перекодирует данные в 1251 и видятся они нормально. Выход при подключении через Sybase Central в свойствах подключения закладка Advanced добавить параметр charset=cp1251, если же используешь ODBC, то там добавить в свойствах DSN такая же закладка Advanced называется Character Set тоже можно добавить cp1251, но при этом помни что будет кодироваться клиентом Sybase, а потом еще и кодировщиком программы, в результате в программе будет отражено неизвестоно что, а точнее 866->1251->1251.
Я переход с 5-ки на 7-ку произвел со сменой кодировки базу: просто базу 5-ки слил в SQL-файл(структуру и данные), затем перекодировщиком текстовых файлов перекодировал все из 866 в 1251, в 7-ке создал базу в 1251 и залил получившийся скрипт. Потом пришлось везде поубивать трансляторы на клиентах
...
Рейтинг: 0 / 0
Как иероглифы эти убрать...)))
    #32506123
iusup
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Orlov

Большое спасибо...)
Понятно и доступно...)

"базу 5-ки слил в SQL-файл(структуру и данные), затем перекодировщиком текстовых файлов перекодировал все из 866 в 1251"
Я тоже слил ... но не перекодировал...)
Если есть Ася оставь номер...)
Ещё раз спасибо...)
...
Рейтинг: 0 / 0
Как иероглифы эти убрать...)))
    #32510008
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно перегонять БД и без дополнительных программ перекодировщиков, так как сказать штатными средствами. Для этого при выгрузке БД указываем режим "Internal Unload, External Reload" или при вызове DBUNLOAD с командной строки ключ "-ix". Тогда в RELOAD.SQL загрузка данных будет указана через оператор INPUT, а не LOAD TABLE. Далее грузим ISQL с параметром "-codepage <КодировкаСтаройБазы>", подключаемся к созданной с другой кодировкой БД и запускаем RELOAD.SQL . ISQL на автопилоте через команду INPUT будет данные читать в кодировке, указанной в ключе, а загружать в установленной для БД кодировке.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Как иероглифы эти убрать...)))
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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