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

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

При сохранении изменяются значения Float-полей [D7, Access]


Уч ©   (2006-09-19 14:53:00) 

Добрый день! Возникла такая проблема: при сохранении значения Float-поля в базу (Post) его значение меняется. Проверял в отладчике.

AdoTable.Append;
AdoTableSum.Value := 50.004;
//до выполнения Post отладчик показывает AdoTableSum.Value = 50.004
AdoTable.Post;
//а после Post показывает AdoTableSum.Value = 50.004001617

поле Sum в Access одинарное с плавающей точкой;
AdoTableSum: TFloatField;

как избавиться от проблемы?


Anatoly Podgoretsky   (2006-09-20 13:58:00) [1]

Уч   (20.09.06 04:40) [3]
Это свойство типа. Оно прилизительное,


Уч   (2006-09-20 04:40:00) [2]

а я уж было подумал, что это фича базы. Спасибо


sniknik   (2006-09-19 15:21:00) [3]

в типе с плавающей точкой не избавишся, но можеш слегка "сгладить" повысив точность поля до двойного с точкой.
или заменить тип на денежный, тут это уйдет, но придет ограничение на только 4 знака после запятой (т.к. это целочисленный тип указанием нескольких разрядов под дробь).


Sergey13   (2006-09-19 15:14:00) [4]

http://delphikingdom.ru/asp/viewitem.asp?catalogid=374


Наверх

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