powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / jdbc charset
4 сообщений из 4, страница 1 из 1
jdbc charset
    #34409973
Ustal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема при получении русских букв (соединение через jdbc - com.sybase.jdbc3.jdbc.SybDriver)

Кодировка в базе CP850.
Подобная проблема была и с ODBC соединением , решилась путём выставления charset=iso_1.
Тоже самое но в jdbc не прошло (charset=iso_1 в URL).
Хотя можно перекодировать каждое слово вручную(но это как гланды рвать через…),нет желания идти этим путём.
Может что то не правильно делаю:

Class.forName("com.sybase.jdbc3.jdbc.SybDriver");
Info = new Properties();

Info.put("user", username.stringValue());
Info.put("password", password.stringValue());
Info.put("defaultRowPrefetch",defaultRowPrefetch);
Info.put("defaultBatchValue", defaultBatchValue);
Info.put("Charset","iso_1");

………………….................................................................
………………….................................................................

Conn = DriverManager.getConnection("jdbc:sybase:Tds:"+ Info.getProperty("SDLServer","")+":"+Info.getProperty("SDLPort","")+"/"+Info.getProperty("SDLDataBase",""),Info);

Кто знаком с этой проблемой помогите.
...
Рейтинг: 0 / 0
jdbc charset
    #34410963
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
честно говоря у вас такие чарсеты используются для кириллицы, что вы уже работаете через гланды...

и кроме того во всех примерах CHARSET параметр для jdbc указывается в uppercase.
//ps: по другому даже не пробовал, поэтому не уверен что проблема только в этом.
...
Рейтинг: 0 / 0
jdbc charset
    #34411306
Peter Kirillow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
врядли напрямую будет перекодировать
850 страница входит в другую группу (Group 1) перекодировок, чем 1251 или 866 (Group 5)
а перекодировки между группами не делаются
посему делайте через

stmt =(Statement)conn.createStatement();
rs = stmt.executeQuery( query_string );
while ( rs.next( ) ) {
String str = rs.getString(1);
rs_byte = str.getBytes("codepage_какой_подойдет");
System.out.println( new String(rs_byte) );
count = count + 1;
if (count == records_count) {
break;
}
}
...
Рейтинг: 0 / 0
jdbc charset
    #34415785
Ustal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Peter Kirillow большое спасибо.Так и будем делать , помогло.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / jdbc charset
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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