#! /usr/bin/perl # perl t.pl dbi:InterBase:dbname=... user pass use DBI; use strict; use warnings; my $dbh = DBI->connect(@ARGV[0..2], {RaiseError => 1}); for my $scale (1 .. 17) { my $cast = "CAST(19 AS NUMERIC(18, $scale))"; my ($r) = $dbh->selectrow_array("select $cast FROM rdb\$database"); print "$cast ...... $r\n"; } #### CAST(19 AS NUMERIC(18, 1)) ...... 19 CAST(19 AS NUMERIC(18, 2)) ...... 19 CAST(19 AS NUMERIC(18, 3)) ...... 19 CAST(19 AS NUMERIC(18, 4)) ...... 19 CAST(19 AS NUMERIC(18, 5)) ...... 19 CAST(19 AS NUMERIC(18, 6)) ...... 19 CAST(19 AS NUMERIC(18, 7)) ...... 19 CAST(19 AS NUMERIC(18, 8)) ...... 19 CAST(19 AS NUMERIC(18, 9)) ...... 19 CAST(19 AS NUMERIC(18, 10)) ...... -88.1021438976 CAST(19 AS NUMERIC(18, 11)) ...... -884.01624455168 CAST(19 AS NUMERIC(18, 12)) ...... -8847.001212166144 CAST(19 AS NUMERIC(18, 13)) ...... -88475.0001384243200 CAST(19 AS NUMERIC(18, 14)) ...... -884756.00000957530112 CAST(19 AS NUMERIC(18, 15)) ...... -8847564.000000985366528 CAST(19 AS NUMERIC(18, 16)) ...... -88475644.0000001263730688 CAST(19 AS NUMERIC(18, 17)) ...... -884756445.00000001899888640