decimal(18,0),數值中共有18位數,其中整數占18位,小數占0位。Decimal(n,m)表示數值中共有n位數,其中整數n-m位,小數m位。
例:decimal(2,1),此時,插入數據“12.3”、“12”等會出現“數據溢出錯誤”的異常;插入“1.23”或“1.2345...”會自動四舍五入成“1.2”;插入“2”會自動補成“2.0”,以確保2位的有效長度,其中包含1位小數。
當用 int類型會有溢出時,可以用 decimal 類型進行處理,把結果可以用 convert 或是 cast 進行轉換。
如果想保留20位小數 ,需保證n-m>=20