-
При выводе данных с SQL-сервера типа real в dbgrid, если после запятой стоят значения, дописываются еще цифры. Так если в базе 15,45 то в сетке выводит подобное.... 15,4500034576. Если число целое, то все корректно. Может кто подскажет... Как обрезать лишние? При выводе в access, информация выводится корректно...
-
Использовать numeric или наложить маску вывода.
-
real на float поменяй, у него точность больше. ну или денежный тип используй, если для денег...
-
> von (19.11.2010 17:16:00) [0]
Используй BCD формат, а для Real можешь использовать DisplayFormat
-
> Используй BCD формат не стоит. D5... а насколько знаю даже в 7й поддержка BCD убогая, через currency значения из рекордсетов передает.
-
> sniknik (19.11.2010 21:07:04) [4]
Ну не Float же использовать?
-
а чего нет? вполне достаточно. это аналог Double в дельфи, а Real аналог Single.
-
> а чего нет? вполне достаточно. это аналог Double в дельфи, > а Real аналог Single.
15,45 точно не представляется ни в Double, ни в Single. А BCD числа Дельфи за 15 лет так и не научился представлять.
-
> DiamondShark (22.11.2010 14:58:07) [7]
А ведь в начале 90 годов купили готовую технологию, часть dBase IV И благополучно ее похерели, сначала в dBase
-
> 15,45 точно не представляется ни в Double, ни в Single. точно и не обязательно (для денег был предложен денежный тип, а вопрос про отображение). очень маленькие погрешности при отображении откинутся. для данного вопроса проблему решит в общем.
|