【Oracle】int类型最大能容纳126位的整数

注意:本例是在 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 下测试完成,不保证其它版本也是同样结果。

int这个类型在oracle里是number的子类型,因为书写方便范围广阔深受我的喜欢。

今天受一位老哥的启发,特地去查了一下int的范围,有的网文说是22位,有的说是38位,还有说更多的,不一而足。

于是我建表尝试了一下:

SQL> create table sample(
  2  id int,
  3  price number(6,2),
  4  count number(3),
  5  name nvarchar2(20),
  6  primary key(id));

表已创建。

插值:

 insert into sample values(999999999099999999909999999990999999999099999999909999999990999999999099999999909999999990999999999099999999909999999990999998,3.14,81,'梨子');

执行效果:

SQL>  insert into sample values(999999999099999999909999999990999999999099999999909999999990999999999099999999909999999990999999999099999999909999999990999998,3.14,81,'梨子');

已创建 1 行。

SQL> commit;

上面这一串数字有多少位呢,一个0代表十位,而999999999099999999909999999990999999999099999999909999999990999999999099999999909999999990999999999099999999909999999990999998有126位!

看来int的上限真是大得吓人。

-END-

原文地址:https://www.cnblogs.com/heyang78/p/15312315.html