![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Дроби в БД. [D5, Paradox]
anton_cor © (2003-03-04 14:44:00)Нужно хранить в БД числа типа 6,456 67,4 , 234,34 то есть знака три не больше после запятой. Поле имеет тип данных Number. Но при переводе из строки (вводит юзер) в число, например StrToFloat(‘5,6) поле принимает значение
5,59999990463257
Что по сути то совершенно правильно… Но погрешность то будет!
Как хранить подобные числа? Значит вещественный тип данных не подходит?
А как тогда? Заводить два поля – цела часть/дробная или число/множитель и реализовывать все арефметические операции самому?
Не верю что нет стандартных способов.
Anatoly Podgoretsky (2003-03-04 18:57:00) [1]Парадокс систых BСD полей не поддерживает, если очень нужно то надо менять формат базы
MBo (2003-03-04 15:15:00) [2]а Currency (тип Comp) не подойдет?
Johnmen (2003-03-04 15:07:00) [3]>Но погрешность то будет!
Где будет ?
1. Округлять в приложении
2. Хранить как целое, подразумевая опред.позицию дес.точки
AlexSerp (2003-03-04 14:54:00) [4]Форматируй перед сохранением.
FmtStr procedure - в хэлпе.