|
|
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
Добрый день,Уважаемые форумчане. Возникла потребность нашей КИС(Комплексной Информационной системе ,-Swing-Oracle ADF BC4J) соеденится с Oracle 8i Кодировка базы cp1251 и вроде всё нормально,но как только читаем CLOB поле.в котором русские буквы ,он их не читает,а выводит крокозяблами. 1.При соединении с более высокими версиями Oracle без проблем. 2.Как только я этот CLOB преобоазую в Varchar2(java.lang.String) select dbms_lob.substr(MYCLOB,32767,1) clobstr ТОЖЕ всё русские буквы отлично видны на экране дисплея. :-) Предположение,- CLOB именно от oracle 8i приходит в JDBC не в Unicode.(Ибо тот же JDBC с остальными версиями Oracle(10-11) с CLOB полями работает замечательно). Я уже по разному пытался переводить в charset разные. InputStreamReader=new InpuntStreamReader(clobdomain.getinputstream,Character.foname("cp1251")); InpuntStreamReader(clobdomain.getinputstream,Charset.foname("UTF-8")); Ну немеряно преобразований попробовал всё никак. Может кто-то знает как это вылечить.? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 11:29:30 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
On 15.03.2012 12:29, irbis_al wrote: > Возникла потребность нашей КИС(Комплексной Информационной системе ,-Swing-Oracle ADF BC4J) соеденится с Oracle 8i > Кодировка базы cp1251 > и вроде всё нормально,но как только читаем CLOB поле.в котором русские буквы ,он их не читает,а выводит крокозяблами. > > 1.При соединении с более высокими версиями Oracle без проблем. > 2.Как только я этот CLOB преобоазую в Varchar2(java.lang.String) select dbms_lob.substr(MYCLOB,32767,1) clobstr ТОЖЕ всё > русские буквы отлично видны на экране дисплея. :-) > > Предположение,- CLOB именно от oracle 8i приходит в JDBC не в Unicode.(Ибо тот же JDBC с остальными версиями > Oracle(10-11) с CLOB полями работает замечательно). Какой версии используется JDBC-драйвер? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 11:33:50 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
Denis Popov, А вот саму версию JDBCне знаю(как узнать?) Он поставляется вместе с oracle JDeveloper 10 (Например Jdeveloper 11 не работет с 8i говорит не поддерживается) И ещё нельзя поменять просто JDBC драйвер (я пробовал уже вхять родной classes.zip от 8i) Там завязка с adf bc4j он метаданные им передаёт(в установленном протоколе ...jdbc 8i его не знает) . Просто пооменять на старый JDBC система не поднимается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 11:52:53 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
irbis_al, апгрейд БД нельзя? Админа нет? Уж сильно 8-ка отл-тся от 9 и выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 11:59:23 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
Апгрейт проблематичен. Там старые машины. Начинали мы с Delphi потом разработали crossplatform CIS под 10-11 Новым клиентам уже машины и с памятью ставим и т.д. А поддерживать старое надо?...клиенты просят новшества ,которые в НОвой КИС уже есть. И обидно...оно почти работает за исключением момена CLOB ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 12:04:02 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
irbis_alА вот саму версию JDBCне знаю(как узнать?) Он поставляется вместе с oracle JDeveloper 10 Как-то так: Код: java 1. 2. 3. 4. 5. 6. В проекте присутствуют такие архивы как nls_charset.jar или orai18n.jar? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 12:11:37 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
Да orai18n.jar Есть. Тут дело в "боке" 8i я смотрю попойтно в массиве когда приходит строка select dbms_lob.substr(clob) и когда приходит clob после clob.tostring Совсем разные вещи...мне не в Unicode приходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 12:15:56 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
Да orai18n.jar Есть. Тут дело в "боке" 8i я смотрю ПОБАЙТНО в массиве когда приходит строка select dbms_lob.substr(clob) и когда приходит clob после clob.tostring Совсем разные вещи в БАЙТАХ...мне не в Unicode приходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 12:16:55 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
У меня уже как бы есть кривое решение,но оно кривое. Поскольку строки хаваются на ура. я создаю в оракле 8i тип create type clob8istring as table of varchar2(4000); Создаю FUNCTION GET8IJCLOB(clob) return clob8istring ; Разбивает клоб на таблицу из строк по 4000 select GET8IJCLOB(clob) cast as table в яве получаю таблицу ...соединяю строки получаю сито руссий CLOB ...но это же лажа...а не работа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 12:29:56 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
irbis_al, создай вьюшку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 12:40:33 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
Petro123, Это первое что делали не катит только 4000 символов получаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 12:48:53 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
off у вас реально больше 4 штук? imho 1. сверь параметры БД "select * from nls_database_parameters " PARAMETER VALUE 1 NLS_LANGUAGE RUSSIAN 2 NLS_TERRITORY CIS 3 NLS_CURRENCY ?. 4 NLS_ISO_CURRENCY CIS 5 NLS_NUMERIC_CHARACTERS , 6 NLS_CHARACTERSET CL8MSWIN1251 7 NLS_CALENDAR GREGORIAN 8 NLS_DATE_FORMAT DD.MM.RR 9 NLS_DATE_LANGUAGE RUSSIAN 10 NLS_SORT RUSSIAN 11 NLS_TIME_FORMAT HH24:MI:SSXFF 12 NLS_TIMESTAMP_FORMAT DD.MM.RR HH24:MI:SSXFF 13 NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR 14 NLS_TIMESTAMP_TZ_FORMAT DD.MM.RR HH24:MI:SSXFF TZR 15 NLS_DUAL_CURRENCY ?. 16 NLS_COMP BINARY 17 NLS_LENGTH_SEMANTICS BYTE 18 NLS_NCHAR_CONV_EXCP FALSE 19 NLS_NCHAR_CHARACTERSET AL16UTF16 20 NLS_RDBMS_VERSION 10.2.0.3.0 2. запости на форум БД (если с дровами не выйдет) 3. неуверен... select * from NLS_Session_Parameters сколько байт занимает varchar2 Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 13:03:20 |
|
||
|
BC4J adf ClobDomain и Oracle 8i
|
|||
|---|---|---|---|
|
#18+
Petro123, NLS_CHARACTERSET CL8MSWIN1251 а вот NLS_LANGUAGE у Меня AMERICAN вполне возможно ,что тут собака порылась Кстати на работающих 10 и 11 Oracle Тоже NLS_CHARACTERSET CL8MSWIN1251 NLS_LANGUAGE AMERICAN Видимо там главное NLS_CHARACTERSET Но я же не могу поменять для действующей базы 8i NLS_LANGUAGE на RUSSIAN могу только для сессии. или в переменной окружения Но и так и так пока не работает. Может кто-то знает как глобально сменить NLS_LANGUAGE (Хотя наверно это вопрос для ораклового форума) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2012, 13:53:06 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37706214&tid=2132320]: |
0ms |
get settings: |
12ms |
get forum list: |
23ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
18ms |
get forum data: |
5ms |
get page messages: |
81ms |
get tp. blocked users: |
2ms |
| others: | 323ms |
| total: | 521ms |

| 0 / 0 |
