[Record] SQL 與 C# 使用 Decimal 的失誤

在進行資料大量匯入時,發生 "Parameter value 'X.XXXXXXXXXXXXXXX' is out of range"

前情提要

在 SQL Database 內建立 decimal(15,15) 的 Column

故事開始

匯入大量資料時,發生了 "Parameter value ‘X.XXXXXXXXXXXXXXXXXXXX’ is out of range"

計算了以後,以為是小數點超過 15 位而匯入失敗

故我在程式碼內新增僅小數點後 15 位的限制

decimal.Round(X.Cost, 15)

可是我重新啟動後,卻還是發生了

"Parameter value ‘X.XXXXXXXXXXXXXXX’ is out of range"

查詢後才發現原來在 SQL Database 內設定的 decimal(15,15) 前方 15 是數字總數,非小數點前總數字個數

解惑後,故將編寫文章進行記錄以免從新犯錯

 

參考鏈接 - https://stackoverflow.com/questions/56349584/parameter-value-is-out-of-range

分級: 入門是認識, 基本是運用, 進階是混合結合
範本是已可下載或可使用的範例, 至於教程當然是學習的結晶