Форум: "Базы";
Текущий архив: 2003.04.21;
Скачать: [xml.tar.bz2];
ВнизADO, Access 97 и точность в Delphi Найти похожие ветки
← →
Builder (2003-03-29 17:44) [0]При сожранении чисел с точностью 3 знака в базе данных(MS Access 97 через ADO), получаеться что имеем типа: 3.00000001
Поля в которые происходит сохранени:
С плавающей точкой (8 байт)
выставлено число дес знаков - 3.
Но все это не помагает.
Как правильно записывать?
← →
blackman (2003-03-30 19:59) [1]А сам как думаешь ?
← →
Builder (2003-03-31 10:12) [2]2 blackman
Если бы знал как правильно, не писал бы сюда.
10х за информативный ответ :(
Проблема решаеться оказываеться выставление типа currency и настройки его вида :)
← →
blackman (2003-03-31 10:29) [3]>Если бы знал как правильно
Значит знал.
← →
Anatoly Podgoretsky (2003-03-31 11:33) [4]Главное если бы задумался над смыслом слова с плавающей запятой, то сразу бы сообразил, то что ты требуешь называется с фиксированной запятой - BCD поля.
← →
Builder (2003-04-03 01:46) [5]Да, со всем я согласен.
Но есть такой вопрос: если я оставляю плавающую точку, формат основной, то
присваиваю 1,37,
получаю 1,37000000001
но в аксесе я могу зайти поменять и ОНО присвоит полю 1,37.
КАК ОНО ЭТО ДЕЛАЕТ?
Что бы и я мог???
← →
sniknik (2003-04-03 08:14) [6]а как ты присваиваеш? я вот делаю инсерт
INSERT INTO BOX1 (Fl,NEXTID,PREDID,REMARK) VALUES (1.37, 0, 0, "Test")
потом запрос
SELECT * FROM BOX1
и вижу в поле F1 = 1.37, не больше не меньше. (F1 формат double позиций после запятой Auto, 2 и 3 как у тебя тоже пробовал)
← →
Proxvost (2003-04-03 11:50) [7]Если ты из дельфи присваиваешь данные типа Double в поля Акцесса то проблемм не должно быть, а вот с чтением можно транслировать разными путями если тащишь через DBGrid то поле Precission смотри для ординарных 7 для двойных 15. Ежели тебе отдельно нада вытащить значение то даж не знаю, я выкрутился так:
namber := strtofloat(floattostrf(namber,ffgeneral (или ffexponent),7,7));
Изврат, согласен, но работает.
С уважением Прохвост
P.S. К сожалению приходится запоминать точность чисел которые вводишь. :( В обычном паскале этой проблемы не было :)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.04.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.009 c