为什么oracle在存数字的时候会采用类似NUM(10)这样的类型,而不是int,long?
这样做的好处是什么,NUM(2)和NUM(4),占用的存储空间是相同的么?
如果我建立了一个NUM(30)的数据类型,那我用OCI取数据时,应该如何写?问题有点多。。
这样做的好处是什么,NUM(2)和NUM(4),占用的存储空间是相同的么?
如果我建立了一个NUM(30)的数据类型,那我用OCI取数据时,应该如何写?问题有点多。。
一般情况下大部分数字类型都以number型存储就足够了
至于INTEGER FLOAT REAL 这些类型,都不是有效的字段类型,但是在写存储过程时,我们也可以根据需要使用这样数据类型,以节省资源
为什么oracle在存数字的时候会采用类似NUM(10)这样的类型,而不是int,long?
number(n)是oracle数字类型的标准方式,也可以number(m,n)来表示带小数的数字类型,oracle里有long,不过已经不是数据类型的概念了,是一种大数据类型的定义。 int也是有的,应该是表示一般的整数类型, 是NUMBER类型的子类型。对应的大小范围需要查一下文档了,这个主要是用于和其他数据库兼容的。这样做的好处是什么,NUM(2)和NUM(4),占用的存储空间是相同的么?
首先这里应该是number(2), number(4)
这里和varchar等字符型类型不同,这里的2,4不是表示的存储空间的大小,而是表示的数字类型的精度的类型,
对于number来说,可以支持整数,小数,浮点等,当然不同的精度所需要的存储空间也是不一样的。如果我建立了一个NUM(30)的数据类型,那我用OCI取数据时,应该如何写?
number(30)对应于你的应用所使用的语言的数据类型的范围就可以了,