Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Спонтанные округления [D6, MSSQL]


wild_arg ©   (2005-12-20 15:04:00) 

Есть в таблице поле типа decimal(18,6), лежит там себе, в одной записи, число 2.00016. Через КвериАнализер вывожу запрос "select * from MyTable" - все красиво показывается. В программе создаю квери, присваиваю ему тот же запрос - однако число выводится как 2.0002. Я уж его и как стринг читал, и как вариант - все бестолку.
Каке у вас есть мысли по этому поводу, поделитесь.


sniknik   (2005-12-20 15:59:00) [1]

> Я уж его и как стринг читал
SELECT ... Cast(поле AS VarChar(18)) FROM таблица
а уже после этого читай. (имхо самый простой вариант)


Zz_   (2005-12-20 15:10:00) [2]

. . .
   adDecimal, adNumeric, adVarNumeric:
     if EnableBCD then Result := ftBCD
     else Result := ftFloat;
. . .


evvcom   (2005-12-20 15:10:00) [3]


> В программе создаю квери

Что такое "квери"?

> однако число выводится как 2.0002

где выводится? как выводится?

> Я уж его и как стринг читал, и как вариант - все бестолку.

Смотреть надо, как, с какой точностью TField воспринимает данные. См. TFloatField.Precision.


Наверх

Титульная страница Поиск, карта сайта Написать письмо