Попробовал пример abcmavt - ошибка

Обсуждение MAV Direct ODBC

Модератор: Andrew™

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion и MAV который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
tanatol
Посетитель
Сообщения: 27
Зарегистрирован: 24 Октябрь 2005, 13:27
Откуда: Tver

Попробовал пример abcmavt - ошибка

Сообщение tanatol »

Ошибка связана с числовыми полями : если есть дробная часть ( 1.15 ) , то при добавлении записи получаю ошибку :
Error : [Oracle][ODBC][Ora]ORA-01722: неверное число
В чем причина ?
OVV
Бывалый
Сообщения: 58
Зарегистрирован: 21 Сентябрь 2005, 10:41
Откуда: Московская область

Сообщение OVV »

Может причина в разделителе? У тебя точка, а Оракл хочет запятую?
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

OVV писал(а):Может причина в разделителе? У тебя точка, а Оракл хочет запятую?
не в этом проблема, от разделителя не зависил т к всё передаётся бинарно ("?"), а не строкой

тут известная проблема, не люблю я переводить стрелки, но в данном случае железно, кривой соответсвующий ODBC Oracle DRIVER

я юзаю от 7 и от 8(определённый) и с ними работает

почему утверждаю данных факт, так даже в том же ODBC TEST в Oracle поставке тажа фигня.
tanatol
Посетитель
Сообщения: 27
Зарегистрирован: 24 Октябрь 2005, 13:27
Откуда: Tver

Сообщение tanatol »

А где взять не кривой ?
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

tanatol писал(а):А где взять не кривой ?
на http://www.oracle.com
tanatol
Посетитель
Сообщения: 27
Зарегистрирован: 24 Октябрь 2005, 13:27
Откуда: Tver

Сообщение tanatol »

поставил драйвер версии 9.02.00.54 - все равно вылетает с этой же ошибкой . для более поздних драйверов требуется другая версия инсталлера.
tanatol
Посетитель
Сообщения: 27
Зарегистрирован: 24 Октябрь 2005, 13:27
Откуда: Tver

Сообщение tanatol »

Попробовал работать через ODBC работать с тем же файлом SQLProducts : когда поле PRICE было decimal(7,2) выскакивала та же ошибка ORA_0122 ( Неверное число ), поменял на REAL - OK. В mavdemo поменял DECIMAL(7,2) на REAL - все равно ошибка 01722. В чем разница ?
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

tanatol писал(а):Попробовал работать через ODBC работать с тем же файлом SQLProducts : когда поле PRICE было decimal(7,2) выскакивала та же ошибка ORA_0122 ( Неверное число ), поменял на REAL - OK. В mavdemo поменял DECIMAL(7,2) на REAL - все равно ошибка 01722. В чем разница ?
со стороны клиента DECIMAL или REAL не играет рояли, это приёмные буфера, поле то со стороны БД не изменилось

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


ради интереса, вместо DECIMAL в DCT выставь CSTRING(10), что будет?
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

tanatol писал(а):Попробовал работать через ODBC работать с тем же файлом SQLProducts : когда поле PRICE было decimal(7,2) выскакивала та же ошибка ORA_0122 ( Неверное число ), поменял на REAL - OK. В mavdemo поменял DECIMAL(7,2) на REAL - все равно ошибка 01722. В чем разница ?
почитал я про ошибку, проблема именно с запятычкой

1000,55 - для твоего сервака правильно
1000.00 - для библиотеки правильно

завтра попробую разрулить, или найти в настройках ODBC дривера есть какая то настройка на эту тему
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Сообщение Andrew™ »

tanatol писал(а):Попробовал работать через ODBC работать с тем же файлом SQLProducts : когда поле PRICE было decimal(7,2) выскакивала та же ошибка ORA_0122 ( Неверное число ), поменял на REAL - OK. В mavdemo поменял DECIMAL(7,2) на REAL - все равно ошибка 01722. В чем разница ?
если REAL через DRIVER('ODBC') работает
интересно если вводить с бробной частью 10.23
в БД часом эта дробная часть не обрезается?

что то было когда то у меня когда LANGUAGE Настройка у клиента ораклового была не AMERICAN_AMERICA.CL8MSWIN1251
tanatol
Посетитель
Сообщения: 27
Зарегистрирован: 24 Октябрь 2005, 13:27
Откуда: Tver

Сообщение tanatol »

нет не обрезается. нормально отрабатывает !
tanatol
Посетитель
Сообщения: 27
Зарегистрирован: 24 Октябрь 2005, 13:27
Откуда: Tver

Сообщение tanatol »

Если у кого еще какие-нибудь мысли по поводу это проблемы с числами с десятичной точкой ?
Ответить