由于工作中不断的需要和数据打交道,一直有点不太明白,所以特地研究了下数据库中的这个类型。
环境:Oracle11g+Windows7旗舰版
Number:这时的数据不论位数,只是有一定的表示范围,具体范围不定。
Number(n):此时只会判断小数点前的位数是否大于n,如果大于n则会提示:ORA-01438:值大于为此列指定的精度;如果小数点前的位数小于n,则会取小数点前的数据,小数点后面不论。
Number(n,m):(1)此时的要求是小数点前面的数据长度必须要小于等于n-m,否则会报错,但是在满足前面的条件的情况下,小数点后面的位数大于m或者整数位数+小数位数大于n的情况下,会对小数点后面的数据发生截断,截断方向是从后往前。
(2)当n小于m的时候,个人实验是无法插入数据的。结果如图所示。
(这是数据库表的描述)
此表为以下截图的用表: