3

有什么作用:

value_1 INTEGER(5);

意思是 ?

我知道这value_1是一个整数,但5 声明中的含义是什么?

4

2 回答 2

6

在 Oracle 中,这意味着数字所允许的最大十进制位数。
因此,number(5) 类型的变量可以包含 99999,但不能包含 100000。
事实上,该子类型将您的值限制为 -99999 到 99999。

涵盖子类型的 Oracle 文档number,其中一个是integer.

涵盖该number类型的 Oracle 文档。

于 2013-03-12T15:16:50.530 回答
2

简单来说,当有人写类似 value_1 INTEGER(5); 表示定义一个名为 value_1 的数字类型变量,该数字类型的精度为 5。

除了精度之外,还可以像这样定义比例: value_1 number(p,s) --其中 p 是精度,s 是比例。

在 Oracle 11g 中 - Precision 的范围可以从 1 到 38,Scale 的范围可以从 -84 到 127。

例如,number(7,2) 是一个小数点前 5 位和小数点后 2 位的数字。

现在假设您要定义一个应该始终 <1000 的数字,那么您可以这样定义:

NUMBER(3,2) 以便您可以容纳最大 999.99

希望这有帮助!

于 2013-03-12T18:02:21.087 回答