38表示这个数据的有效位数(精度),3表示三个小数位(刻度)。
oracle中number数据类型可以表示为:NUMBER (p,s),其中p和s范围:
p:1-38
s:-84-127
number(p,s),s大于0,表示有效位最大为p,小数位最多为s,小数点右边s位置开始四舍五入,若s>p,小数点右侧至少有s-p个0填充(必须从小数点处开始并连续)。
number(p,s),s小于0,表示有效位最大为p+|s|,没有小数位,小数点左边s位置开始四舍五入,小数点左侧s位,每一位均为0。
扩展资料:
NUMBER类型的子类
1、oracle本来就没有int类型,为了与别的数据库兼容,新增了int类型作为number类型的子集。
2、int类型只能存储整数;number可以存储浮点数,也可以存储整数。
3、在oracle数据库建表的时候,decimal,numeric不带精度,oracle会自动把它处理成INTEGER;带精度,oracle会自动把它处理成number。
4、Oracle只用NUMBER(m,n)就可以表示任何复杂的数字数据。
5、decimal,numeric,int等都为SQL、DB2等数据库的数据类型,ORACLE为了兼容才将其引入;但实际上在ORACLE内部还是以NUMBER的形式将其存入。