Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / odbc dbf десятичный разделитель / 9 сообщений из 9, страница 1 из 1
23.03.2007, 18:18
    #34412642
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
продублирую ? с перепиской который я задад на фоксклубе
может кто знает ?

DB2 поля decimal( 14,2)
Для просмотра затащил в dbf
там поля N(14,2)
показывает значение 7,41
перехожу на это поле становится 7,00
? поле возвращает 7.00
ps в Hiew посмотрел dbf - 7,41

Попробуй поиграться с региональними настройками: Разделитель целой и дробной части у тебя наверноє стоит ',' а надо '.'
C DB2 не знаю может есть такой параметр в настройках ODBC. ищи в етом направлении
темой • Известить модератора

ТОЧНО В нормальной базе через точку
а здесь получается через запятую

настройки ODBC смотрел - их там нет - 1 кнопка
зы база немецкая - права даже не на таблицы а на views
мне удобно через sqlexec запросы таскать

ззы попробовал поменять разделитель в настойках панели управления не помогло

Mitjay

Не знаю как в DB2, а в Оракуле есть параметр сессии NLS_NUMERIC_CHARACTERS, который отвечает за десятичный разделитель. В итоге, чтобы числа в запросах рисовались правильно, надо сказать в Оракуле ALTER SESSION set NLS_NUMERIC_CHARACTERS='. '.
Поищи похожий параметр у ДиБиДва
...
Рейтинг: 0 / 0
24.03.2007, 08:29
    #34413149
gals
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
символы точка или запятая, это настраивается в региональных настройках операционной системы.
В Oracle можно передать серверу,что у клиента используется запяттая для правильной интерпретации текста.
...
Рейтинг: 0 / 0
26.03.2007, 08:21
    #34414520
const64
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
Добрый день!

Уже здесь обсуждалось подобное здесь

Попробуйте patch2=15

Ссылка на док. здесь

Желаю успеха!
...
Рейтинг: 0 / 0
04.04.2007, 16:13
    #34437983
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
patch2=15
Увы не помогло
...
Рейтинг: 0 / 0
28.08.2007, 17:26
    #34759083
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
опять надо
может кто подскажет АНАЛОГ
вот в оракле помогает :'ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ''.,''';
...
Рейтинг: 0 / 0
29.08.2007, 09:40
    #34760242
golsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
Как в DBF перетаскиваете? Может здесь подкрутить можно?
...
Рейтинг: 0 / 0
04.09.2007, 19:18
    #34775744
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
через одбс
patch2=15 увы не помогло :(
...
Рейтинг: 0 / 0
05.09.2007, 10:48
    #34776656
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
Гулин Федорчерез одбс
patch2=15 увы не помогло :(Установка patch2=15 помогает только если вы считываете decimal, double, float как строку.
Типа:
--- some *.c file ---
SQLINTEGER null_ind = 0;
SQLCHAR val[100] = { '\0' };
...
SQLExecDirect(hstmt,
(SQLCHAR *)"VALUES decimal(123.45, 10, 2)", SQL_NTS);
SQLBindCol(hstmt, 1, SQL_C_CHAR, val, sizeof (val), &null_ind);
SQLFetch(hstmt);
printf("Result: %s\n", val);
---
И тогда, в зависимости от значения patch2, в этой строке будет либо '.' (patch2=15), либо ',' (если оно так в региональных настройках и patch2 не установлена).
...
Рейтинг: 0 / 0
28.12.2007, 19:53
    #35041034
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
odbc dbf десятичный разделитель
Проблема решена с помощью Айсанова Олег
Большое СПАСИБО ему !!!
публикую может кому еще понадобится
(VFP ODBC)
Добрый день.
Есть подозрение, что эта ошибка стала появляться после установки нового клиента DB2
DB21085I Экземпляр "DB2" использует "32" бит и выпуск DB2 "SQL08023" с
идентификатором уровня "03040106".
Информационные элементы суть "DB2 v8.1.10.812", "s050811", "WR21362", а также
пакет исправлений "10".

На компьютере, где стоит версия
DB21085I Экземпляр "DB2" использует "32" бит и выпуск DB2 "SQL08010" с
идентификатором уровня "01010106".
Информационные элементы суть "DB2 v8.1.0.36", "s021023", "", а также пакет
исправлений "0".
все отображается нормально.
Переходить на более старую версию драйвера DB2 конечно не хотелось. Почитал сообщения на форуме sql.ru,
и вроде бы нашел для себя решение. Если подключаться по такой строке, то у меня теперь все показывает нормально
в не зависимости от версии драйвера

DSNR = "DRIVER={IBM DB2 ODBC DRIVER};UID=user;PWD=password;DATABASE=databasename;HOSTNAME=10.48.26.19;PORT=50000;PROTOCOL=TCPIP;PATCH2=15;"
nConnectDb2 = SQLSTRINGCONNECT(DSNR)
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / odbc dbf десятичный разделитель / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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