簡體   English   中英

從C#將十進制數存儲到數據庫中

[英]Store decimal number into database from c#

我試圖將十進制數字存儲到SQL Server數據庫中,列數據類型為numeric(10,2)

使用參數化過程將數據從文本框傳遞到數據庫,如下所示

cmd.Parameters.Add(new SqlParameter("@PP", SqlDbType.Decimal)).Value = decimal.Parse(TB_PP.Text);

我的問題是我可以直接在數據庫表中輸入十進制數,當從數據庫讀取它到文本框時,我得到一個十進制數

但是,當通過文本框存儲它時,它會保存一個整數,所以我應該使用什么代替SqlDbType.Decimal

嘗試使用雙精度而不是十進制:

double.Parse(TB_PP.Text);

嘗試通過以下方式定義參數:

cmd.Parameters.Add(new SqlParameter("@PP", SqlDbType.Decimal) {
    Precision = 10, 
    Scale = 2 
 });

我的經驗是,當SQL數據類型為decimal(10,2)而不是numeric ,請嘗試一下。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM