>NUMBER类型细讲
Oracle number datatype 语法NUMBER[(precision [ scale])]
简称precision –> p
scale –> s
NUMBER(p s)
范围 <= p <= <= s <=
保存数据范围e <= number value < e+
保存在机器内部的范围 ~ bytes
有效为从左边第一个不为的数算起的位数
s的情况
s >
精确到小数点右边s位并四捨五入然后检验有效位能不能 <= p
s <
精确到小数点左边s位并四捨五入然后检验有效位能不能 <= p + s
s =
此时NUMBER表示整数
eg:
Actual Data Specified As Stored As
—————————————
NUMBER
NUMBER()
NUMBER()
NUMBER()
NUMBER() exceeds precision (有效位为 > )
NUMBER()
NUMBER() (有效位为)
NUMBER()
NUMBER()
NUMBER()
NUMBER()
e NUMBER()
e NUMBER()
NUMBER
NUMBER()
NUMBER() Error (有效位为+ > )
NUMBER() (s没有表示s=)
NUMBER()
NUMBER()
NUMBER() Error (有效位为 > )
NUMBER()
NUMBER() Error (有效位为 > )
NUMBER(* )
NUMBER() Error ( 有效位为 > )
NUMBER()
NUMBER()