带小数点和不带小数点的 Oracle NUMBER 数据类型最大限制

Oracle NUMBER data type max limit with & without decimal points

我在应用程序中有一个数字字段,它向我的 Oracle 过程传递一个数值,该过程是 NUMBER 数据类型。数值可以是正数、负数、带或不带小数点。

我需要从应用程序中限制它,所以我需要指定最大限制而不进行任何舍入。我能知道正数、负数、带小数点和不带小数点的限制是多少吗?

真正允许的不是范围,而是精度。您可以传递最多 38 位的任何数字,无论小数点分隔符是否或在何处。

好的:

+12345678901234567890123456789012345678
-12345678901234567890123456789012345678
+1.2345678901234567890123456789012345678
-1234567890123456789012345678901234567.8

可能会稍微残缺不全:

+123456789012345678901234567890123456789
-123456789012345678901234567890123456789
+1.23456789012345678901234567890123456789
-1234567890123456789012345678901234567.89

带有一些较长数字的演示:https://dbfiddle.uk/?rdbms=oracle_18&fiddle=aa74ef09157dcf86daa76507e868fe49