There are noted bugs in Firebird embedded when the receiving field (Base) is of decimal or numeric type. It may be best to have these receiving field(s) be set as type DOUBLE PRECISION instead. There is also another alternative if numeric or decimal is absolutely needed. Please see related posts: