Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.24;
Скачать: CL | DM;

Вниз

Дроби в БД.   Найти похожие ветки 

 
anton_cor ©   (2003-03-04 14:44) [0]

Нужно хранить в БД числа типа 6,456 67,4 , 234,34 то есть знака три не больше после запятой. Поле имеет тип данных Number. Но при переводе из строки (вводит юзер) в число, например StrToFloat(‘5,6) поле принимает значение
5,59999990463257
Что по сути то совершенно правильно… Но погрешность то будет!
Как хранить подобные числа? Значит вещественный тип данных не подходит?
А как тогда? Заводить два поля – цела часть/дробная или число/множитель и реализовывать все арефметические операции самому?
Не верю что нет стандартных способов.


 
AlexSerp ©   (2003-03-04 14:54) [1]

Форматируй перед сохранением.
FmtStr procedure - в хэлпе.


 
Johnmen ©   (2003-03-04 15:07) [2]

>Но погрешность то будет!

Где будет ?

1. Округлять в приложении
2. Хранить как целое, подразумевая опред.позицию дес.точки


 
MBo ©   (2003-03-04 15:15) [3]

а Currency (тип Comp) не подойдет?


 
Anatoly Podgoretsky ©   (2003-03-04 18:57) [4]

Парадокс систых BСD полей не поддерживает, если очень нужно то надо менять формат базы



Страницы: 1 вся ветка

Текущий архив: 2003.03.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
1-76468
Maximov
2003-03-12 11:34
2003.03.24
Как отловить события компонентов которые на события не реагируют


14-76664
X-Man
2003-03-06 19:54
2003.03.24
Windows 98


14-76574
SkyQuake
2003-03-09 13:13
2003.03.24
Замена MS Help WorkShop


1-76466
jen_bond
2003-03-12 08:34
2003.03.24
Invalid floating point operation


9-76256
Axis_of_evil
2002-10-17 16:20
2003.03.24
3D MAX im Delphi