On 2019-12-08 16:39, Simonov Denis via Firebird-devel wrote:
Alex Peshkoff via Firebird-devel <firebird-devel@lists.sourceforge.net> wrote Sun, 08 Dec 2019 15:12:03 +0300:


Thank you, not needed - fixed that.

Fixed, but not completely.

SET BIND OF DECFLOAT(16) NATIVE; -- work OK

But

SET BIND OF DECFLOAT(16) TO CHAR;

select
  NORMALIZE_DECFLOAT(4300) as n1,
  QUANTIZE(2, 9.9) as n2,
  COMPARE_DECFLOAT(2, 2) as n3,
  TOTALORDER(1.0, 1) as n4
from rdb$database;

Incompatible column/host variable data type.
Dynamic SQL Error.
SQL error code = -303.
arithmetic exception, numeric overflow, or string truncation.
string right truncation.
expected length 5, actual 6.


Works for me:

SQL> select
CON>   NORMALIZE_DECFLOAT(4300) as n1,
CON>   QUANTIZE(2, 9.9) as n2,
CON>   COMPARE_DECFLOAT(2, 2) as n3,
CON>   TOTALORDER(1.0, 1) as n4
CON> from rdb$database;

                     N1                      N2      N3      N4
======================= ======================= ======= =======
                 4.3E+3                     2.0       0      -1

SQL> SET BIND OF DECFLOAT(16) TO CHAR;
SQL>
SQL> select
CON>   NORMALIZE_DECFLOAT(4300) as n1,
CON>   QUANTIZE(2, 9.9) as n2,
CON>   COMPARE_DECFLOAT(2, 2) as n3,
CON>   TOTALORDER(1.0, 1) as n4
CON> from rdb$database;

N1                      N2                           N3      N4
======================= ======================= ======= =======
4.3E+3                  2.0                           0      -1

SQL>




Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to