Ded>тянет резалт в TFloatField со всеми вытекающими.

Так если бы был IBE виноват, то ошибки были бы в обоих случаях,
количество цифер я специально выбирал одинаковым (отличается только положение 
точки)
При переполнении INT64 NUMERIC(15,3) обнулился (не знаю корректно это, пусть разработчики скажут), а NUMERIC(15,5) нет - только снизил точность засчет последних цифер, т.е. типичное поведение при плавающей точке.

PS. Наверное правильнее было бы производить сравнение NUMERIC(15,4) и 
NUMERIC(15,5).
Но проблема появилась после того, как я изменил тип поля в таблице с NUMERIC(15,3) на (15,5). На ней была вьюха с прямым отображением этого поля.
Далее в клиенте (Delphi, FIB+) с персистентным полем TFIBBCDField.
После изменения начала ругаться - мол гриш BCD, BCD а тут Float.

Ответить