Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43
Всем доброе утро !
После заливки данных в базу sql через 1с 8.2 в базе sql некоректно отображаются символы нац.алфавита.Вместо определённых символов идёт символ "?". Это получается только в момент записи данных в базу sql.Сама формируемая строка (выводится на экран) отображается корректно,все символы присутствуют. Можеn кто сталкивался ? Где копать ?
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43
как лечить ?
Поле в базе sql, куда записываю данные- имеет тип nvarchar.Вроде если в запросе подставить символ 'N' перед записываемой строкой-то должно работать. sql Ругается в этом случае на синтакстис.
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата(andrew76 @ 11.07.16, 11:12)
Может в строке подключения к БД какой параметр есть ?
В строке подключения не знаю, но на языке sql есть команда SET NAMES которая устанавливает кодировку в которой после подключения будут поступать данные. Если я правильно понимаю, в вашем случае, после подключения к базе надо выполнить "SET NAMES 'cp1251'". Только на копии экспериментируйте.
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Местный
Сообщений: 365
Из: Slovensko
Спасибо сказали: 78 раз
Рейтинг: 0
Цитата(andrew76 @ 11.07.16, 8:38)
Можеn кто сталкивался ? Где копать ? как лечить ?
1С 8 по умолчанию работает в Юникоде, и отображает в Юникоде. Каким методом выгружаете? Приведите кусок кода. Я сохранял скрипты для MS SQL из 1С с явным указанием кодовой страницы ANSI (т.е. 1251 для Windows).
Когда-то тоже сталкивался с этим. Проверял выгруженные тексты с помощью Notepad++, он показывал в какой кодировке файл, и конвертировал в нужную. Как проверил результат в Notepad++, потом выгрузил "правильно" уже из самой 1С.
Группа: Местный
Сообщений: 365
Из: Slovensko
Спасибо сказали: 78 раз
Рейтинг: 0
Цитата(andrew76 @ 14.07.16, 11:31)
Наконец-то форум ожил...Проблема решилась применением инструкции N' перед строковым параметром:
помогаешь им тут... а они через три дня приходят и попрекают...
Цитата(andrew76 @ 14.07.16, 11:31)
Фрагмент кода:
ТекстЗапросаADO ="Insert into tbQarindosh (MainID,Lastname,Firstname,Patronymic,Qarindoshligi,DataRoj, MestoRoj_country,IshJoyi,BirthTown,YashashJoyi) Values ('" + un + "',N'"+Фам_род+"',.....)
Должно работать с символами национальных алфавитов (Узбекистан,Казахстан,Киргизия,Туркмения) на основе кирилицы.
Привёл бы сразу этот код из 1С, Вам бы сразу и помогли.
Цитата(andrew76 @ 11.07.16, 8:38)
После заливки данных в базу sql через 1С 8.2 в базе sql некорректно отображаются символы нац.алфавита.
Есть ведь разница между сферическим "После заливки данных в базу sql через 1с 8.2 в базе sql некорректно отображаются символы нац. алфавита." - неизвестно, Вы их там льёшь и конкретным "Insert into ... Values (N'" + un + "', N'"+Фам_род+"'..."
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!