Oracle中的number类型

number类型用于定义固定长度的数字,可以使整数,也可以是实数。number(p,s)是完整的定义形式。

p必须是整数,取值范围是1-38,用于指定数字的总的位数。s必须是整数,取值范围是-84~127,用于指定小数点之后的位数。


NUMBER
赋值:1234.56
实际:1234.56


NUMBER(3)
赋值:-123
实际:-123


NUMBER(3)
赋值:1234
实际:错误(ORA-06502:PL/SQL:数字或值错误:数字精度太高)


NUMBER(4,3)
赋值:1.234567
实际:1.235
说明:从小数点后面数3位是4,看其后一位是5,四舍五入


NUMBER(4,3)
赋值:123.4567
实际:错误(ORA-06502:PL/SQL:数字或值错误:数字精度太高)
说明:4表示总位数,3表示小数位数,那么剩余整数位数只能是1位


NUMBER(4,-3)
赋值:1234
实际:1000
说明:从小数点向整数部分数3位,就是从4开始数3个到2,利用该位对前一位进行四舍五入


NUMBER(4,-3)
赋值:1834
实际:2000


NUMBER(4,-3)
赋值:123
实际:0

NUMBER(4,-3)
赋值:823
实际:1000

总结自《Oracle 10g 宝典》

你可能感兴趣的:(Oracle中的number类型)