Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Вниз

Проблема с округлением   Найти похожие ветки 

 
kalliopiy ©   (2004-03-04 12:46) [0]

Здравствуйте! При записи некоторого значения в поле типа float возникает непонятная ситуация с отображением внесенного в поле значения. Т.е., например, записываем "62,8", а получаем в контроле (к примеру TDBEdit) отображение что-то типа "62,7999992845". При этом реально в БД записывается 62,8. Но если вид отображения в контролах можно настроить (хотя это тоже не выход, как по мне) через свойство DisplayFormat этого поля, то вот значение получаемое через FieldByName("myField").asString все равно получается каким-то бредовым...

Что тут можно сделать?


 
Zacho ©   (2004-03-04 12:50) [1]

Во-первых, не использовать тип Float. Для чисел с плавающей точкой использовать DOUBLE PRECISION, с фиксированной - NUMERIC или DECIMAL.
А если нужно округлять - то и округляй, хоть в запросах, хоть в приложении любым способом.
И еще:

> При этом реально в БД записывается 62,8

Это не так. Почитай где-нибудь о формате чисел с плавающей запятой.


 
Johnmen ©   (2004-03-04 12:51) [2]

Нет. Именно реально хранится "62,7999992845".


 
kalliopiy ©   (2004-03-04 12:59) [3]

??!!
М-да, значит, я не до конца с этим разобрался. Что ж, спасибо! Попробую переделать поля в Numeric.


 
Johnmen ©   (2004-03-04 13:03) [4]

http://www.ibase.ru/devinfo/round.htm
и далее там же...


 
Romkin ©   (2004-03-04 13:14) [5]

FieldByName("myField").DisplayText


 
Zacho ©   (2004-03-04 15:40) [6]

2 kalliopiy © :
Только сначала разберись, что тебе действительно нужно: данные с плавающей точкой (DOUBLE PRECISION) и округление, или с фиксированной точкой (NUMERIC,DECIMAL).
И имей в виду NUMERIC в диалекте 1 и NUMERIC в диалекте 3 - разные вещи.



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

Форум: "Базы";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.032 c
1-1079453089
alless
2004-03-16 19:04
2004.04.04
CreateProcess


14-1078811223
ИМХО
2004-03-09 08:47
2004.04.04
Потрепаться - почтой


8-1070365735
Denis555
2003-12-02 14:48
2004.04.04
Медлительность TImage


14-1078946162
Knight
2004-03-10 22:16
2004.04.04
Кто знает хороший компонент, который выводит изображение...


3-1078488208
BJValentine
2004-03-05 15:03
2004.04.04
Глючок с ADO





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский