Главная страница
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.013 c
1-76384
Alex Shulg
2003-03-12 11:06
2003.03.24
Обработка сообщений VCL компонента


6-76556
Фыеукщшв
2003-02-03 16:20
2003.03.24
Как работать через PROXY?


3-76295
Solod
2003-03-04 09:30
2003.03.24
Ошибка в CREATE TABLE


3-76317
anton_cor
2003-03-01 17:37
2003.03.24
Пропадают записи


3-76265
Вопрошающий
2003-03-05 17:34
2003.03.24
Проверка подключения ADOConnection.