ORA-01438: 值大於此列指定的允許精確度
比如定義為number(4,2),卻要插入一個值200.12的話,就會出錯啊,原因是number(p,s)的問題。
number(p,s),其中p表示該number的總長度,s為小數位。
如果s為負數,則會取相應位數的取整。
例如,如果number(4,-3),則數字1234的存儲值為1000;如果number(4,-2),則數字1234的存儲值為1200。
在對數據庫表中的字段設定類型時,要注意:
NUMBER(10,6) Double 帶有小數
NUMBER(4) Long