powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / CLOB c азиатскими символами
9 сообщений из 9, страница 1 из 1
CLOB c азиатскими символами
    #34660812
db2zos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может кто встречался с проблемой...

В DB2 на z/OS создана таблица с колонкой CLOB. При создании таблицы указана ССSID UNICODE -

Код: plaintext
1.
2.
3.
4.
5.
6.
CREATE TABLE CLOBTESTUC (C1 CLOB)
      IN UCTEST.TBSTUC
      CCSID UNICODE!
    
INSERT INTO CLOBTESTUC VALUES (x'4AC3BC7267656E')!
INSERT INTO CLOBTESTUC VALUES (x'E69E97')!

В таблицу добавлены 2 строки, первая сторка "Jurgen" (второй символ это немецкий U c точками), вторая строка - китайский символ.

Проблема: в клиетнском приложении, а так же при просмотре таблицы в db2 CC символы во второй строке не отображаются (пустая строка).

PS: на виндусовой базе такая проблема не наблюдается, более того, если в базе на z/os вместо CLOB использовать VARCHAR, то отображается нормально.
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34660815
db2zos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
База DB2 for z/OS v8.1
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34661888
Похоже проблема не с DB2 for z/OS, а с DB2 Control Center и поддержкой типа данных CLOB в нем.
Он кстати даже в версии 9 использует DB2 Legacy Driver.

Если получать данные через DB2 JDBC Universal Driver, то все на месте.
Специально попробовал через DB2 Developer Workbench 9.1 и через Squirel SQL Client

А клиентское приложение на чем написано?
Если на JDBC то какой драйвер использует?
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34662036
db2zos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Евгений ХабаровПохоже проблема не с DB2 for z/OS, а с DB2 Control Center и поддержкой типа данных CLOB в нем.
Он кстати даже в версии 9 использует DB2 Legacy Driver.

Если получать данные через DB2 JDBC Universal Driver, то все на месте.
Специально попробовал через DB2 Developer Workbench 9.1 и через Squirel SQL Client

А клиентское приложение на чем написано?
Если на JDBC то какой драйвер использует?

Клиент работает через OLE DB2 provider.

авторПохоже проблема не с DB2 for z/OS, а с DB2 Control Center и поддержкой типа данных CLOB в нем.
Не понятно то, что работает нормально при просмотре CLOBа из DB2 for windows, но при этом из под zos нет
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34662153
Версия и фикспак клиента DB2?

И если можно, то минимальный пример (исходник) на OLEDB, т.к. сам пишу или на CLI или на JDBC/SQLJ.

Кстати можно на клиенте запустить трассу и посмотреть что приходит с z/OS.
Если с z/OS приходит пустая строка - нужно смотреть что не так с базой, иначе нужно смотреть что не так на клиенте.
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34662995
db2zos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Евгений ХабаровВерсия и фикспак клиента DB2?

И если можно, то минимальный пример (исходник) на OLEDB, т.к. сам пишу или на CLI или на JDBC/SQLJ.

Кстати можно на клиенте запустить трассу и посмотреть что приходит с z/OS.
Если с z/OS приходит пустая строка - нужно смотреть что не так с базой, иначе нужно смотреть что не так на клиенте.

DB2 Клиент -

Код: plaintext
1.
2.
3.
4.
DB21085I  Экземпляр "DB2" использует "32" бит и выпуск DB2 "SQL08020" с 
идентификатором уровня "03010106".
Информационные элементы суть "DB2 v8.1.7.445", "s040812", "WR21342", а также 
пакет исправлений "7".
Продукт установлен в "C:\DB2\SQLLIB".

Вызываем так -

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
var objConn = Server.CreateObject("ADODB.Connection");
var strConn = "Provider=IBMDADB2;Hostname=ххх.ххх.ххх.ххх;User ID=ххх;Password=ххх;Data source=ххх";
var objRs;
var theCommand;

objConn.Open(strConn);
objRs = objConn.execute("select c1 from clobtestuc");

while (!objRs.EOF)
{
    Response.Write('<BR>cl clobtestuc : '+ objRs.Fields("c1"));
    objRs.MoveNext();
}
objRs.Close();
objConn.Close();

Уточнение : вместо китайских иероглифов, не пустые строки, а "квадратики". При запросе из таблицы с колонкой VARCHAR отображаются нормально.
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34663020
db2zos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
test.asp

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
<%@ LANGUAGE=JavaScript Codepage= 65001  %>
<head>

</head>

<body >


<%
Response.Charset  = "utf-8";
var adParamUnknown = 0x0000;
var adParamInput = 0x0001;
var adParamOutput = 0x0002;
var adParamInputOutput = 0x0003;
var adParamReturnValue = 0x0004;
var adCmdUnknown = 0x0008;
var adCmdText = 0x0001;
var adCmdTable = 0x0002;
var adCmdStoredProc = 0x0004;
var adCmdFile = 0x0100;
var adCmdTableDirect = 0x0200;
try
{
    var objConn = Server.CreateObject("ADODB.Connection");
    var strConn = "Provider=IBMDADB2;Hostname=xxx.xxx.xxx.xxx;User ID=xxx;Password=xxx;Data source=xxx";
    var objRs;
    var theCommand;

    Response.Write('<BR>before execute new2 ');
    var sqltext;
    sqltext = new String(Request.Form("txtinput"));
    Response.Write('<BR>');

    var sqlcmd;

    Response.Write('<BR>Connection opened<BR>');
    objConn.Open(strConn);
    objRs = objConn.execute("select c1 from clobtestuc");

    while (!objRs.EOF)
    {
        Response.Write('<BR>cl clobtestuc : '+ objRs.Fields("c1"));
        objRs.MoveNext();
    }
    objRs.Close();
    objConn.Close();
    Response.Write('<BR>Connection closed');
}
catch (e)
{
  Response.write('<BR><BR><BR>error:  ');
  Response.Write(e.message);
}
%>


</body>

</html>
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34668245
db2zos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кто-нибудь направьте
...
Рейтинг: 0 / 0
CLOB c азиатскими символами
    #34668975
Я уже предлагал, включи трассировку на клиенте и сравни что возвращается от одной СУБД, а что от другой.
Будет время - поэкспериментирую на своей конфигурации.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / CLOB c азиатскими символами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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