Проблема от 12.07.2005:
Работаем с числами с плавающей запятой (float), из-за того что мы русские, клиент выдает даные с (,). Например: 3,30E+002. А языки программирования работают с числами типа 3.30E+002, т.е. в числе нужна (.), а не (,).
В IBM Informix было очень простое решение setenv DBMONEY '$.' и всё OK, а в DB2 переменную, отвечающую за это не обнаружили. Эта проблема возникала в perl-программах, а если еще точнее, в программах без использования 'use locale'... С локалями в perl не все замечательно ...
А вот сегодня опять возникла такая же проблема у наших новых админов, пришлось им помогать. Когда-то я отправлял запрос в IBM на эту тему.
IBM ответил на мой запрос:
В Client Configuration Assistant есть соответствующие настройки. Алиас,по-видимому, обязан быть зарегистрирован в ODBC, а в файле SQLLIB\DB2CLI.INI должно быть указано PATCH2=15, например (настраивается через Выбранное->Параметры CLI, страница в блокноте "Параметры", жмете "Добавить", скроллируете вниз до Path2, выбираете нужное из списка,) или непосредственным редактированием
|--------------------------------------------------------------------------|
| DB2CLI.INI |
|--------------------------------------------------------------------------|
| |
| |
| ; Comment lines start with a semi-colon. |
| |
| [tstcli1x] |
| uid=userid |
| pwd=password |
| autocommit=0 |
| TableType="'TABLE','VIEW','SYSTEM TABLE'" |
| |
| [tstcli2x] |
| ; Assuming dbalias2 is a database in DB2 for MVS. |
| SchemaList="'OWNER1','OWNER2',CURRENT SQLID" |
| |
| [MyVeryLongDBALIASName] |
| dbalias=dbalias3 |
| SysSchema=MYSCHEMA |
| |
| [SAMPLE] |
| Patch2=15 |
| DBALIAS=SAMPLE |
|--------------------------------------------------------------------------|
И ведь работает :)
No comments:
Post a Comment