Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кодировка ADODB Recordset / 8 сообщений из 8, страница 1 из 1
25.09.2018, 11:04
    #39707516
LETME
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
Помогите разобраться пож.
Есть задача получить данные из оракл и вывести их на форму.
По каким то непонятным причинам, сначала все работает нормально. Потом кодировка сбивается и выводятся нечитаемые символы.

Можно ли принудительно задавать кодировку в наборах записей/соединении ADO?
В свойствах не нашел....
Может не так/не там ищу.

Что-то типа rst.ActiveConnection.Charset = "WIN1251"
Или в самих параметрах ConnString
или непосредственно к рекордсету.

Или может вариант конвертировать нечитаемый результат из рекордсета какой процедурой на форму.

Это сильная боль и печаль. Помогите...
...
Рейтинг: 0 / 0
25.09.2018, 11:19
    #39707525
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
LETME, к ораклу не цеплялся, но при подключении ( ConnectionString ) к субейз использовал в строке в том числе и кодовую страницу

...;Charset=cp1252;...
...
Рейтинг: 0 / 0
25.09.2018, 11:38
    #39707536
LETME
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
Панург, спасибо!
Но похоже в коннекшнстринг оракл нет такого параметра. Не нашел.
Пробовал просто забить туда кодировку, естественно выдает ошибку...

https://www.connectionstrings.com/oracle/
...
Рейтинг: 0 / 0
25.09.2018, 11:46
    #39707550
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
LETME, ?
https://www.samsonych.com/lib/php/function.oci-connect.html character_set
Определяет кодировку, используемую клиентскими библиотеками Oracle. Данная кодировка не обязательно должна совпадать с кодировкой, используемой в самой базе данных. Если она не совпадает, Oracle сделает все возможное для конвертирования данных из- и в данную кодировку. В зависимости от используемых кодировок это может не всегда давать приемлемые результаты. Преобразование также создает некоторые дополнительные временные затраты.

Если кодировка не указана, клиентские библиотеки Oracle будут определять ее из переменной окружения NLS_LANG.

Передача этого параметра может уменьшить время затрачиваемое на соединение.
...
Рейтинг: 0 / 0
25.09.2018, 11:49
    #39707551
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
LETME,

ну и может на профильном глянуть? и спросить? http://www.sql.ru/forum/actualsearch.aspx?search=character_set&sin=0&bid=3&a=&ma=0&dt=-1&s=1&so=1
...
Рейтинг: 0 / 0
25.09.2018, 11:52
    #39707555
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
LETME,

NLS_LANG.
...
Рейтинг: 0 / 0
25.09.2018, 14:26
    #39707716
LETME
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
Да в том то и дело, что все эти параметры NLS_LANG и проч все нормально выставлено.
На одних компах работает вообще без проблем.
На других при обработке 5-10 запроса начинают отображаться козябры.

Установлено все тоже самое.

Нашли функцию преобразования:
https://excelvba.ru/code/Encode
...
Рейтинг: 0 / 0
25.09.2018, 14:52
    #39707732
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кодировка ADODB Recordset
LETME,

перекодировка это не интересно...
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кодировка ADODB Recordset / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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