c# - 如何在数据库中存储十进制值?

标签 c# sql asp.net-mvc-4

添加到数据库时未获取小数点值。它会自动四舍五入到最接近的数字。

我已经声明为

 public Decimal Amt { get; set; }

在我的主要模型中它是

public int Add(Decimal Amt)
        {
            using (SqlConnection con = new SqlConnection())
            {
                con.ConnectionString = CONNECTION_STRING;
                using (SqlCommand cmd = new SqlCommand())
                {
                    cmd.Connection = con;
                    cmd.CommandText = "INSERT INTO ledger(Amt)VALUES(@AMT)";                    
                    cmd.Parameters.AddWithValue("@AMT", Amt);
                    int modified = cmd.ExecuteNonQuery();
                    if (con.State == System.Data.ConnectionState.Open) con.Close();
                    return modified;
                }
            }
        }

在 DB 中,它的数据类型是 Decimal(18,0)。

最佳答案

Decimal(18,0)表示小数点右边存储0位。

来源:http://msdn.microsoft.com/en-us/library/ms187746.aspx

关于c# - 如何在数据库中存储十进制值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17140644/

相关文章:

c# - Objective-C <-> 单桥

sql - 比较 HIVE 中的两个表

sql - 本年迄今、去年迄今为止和其他

.net - 从 Bitmap 对象将图像渲染到 ASP.NET MVC 网页上

javascript - 分页未移动到kendogrid中的新数据

c# - 如何从 Asp.Net Core 中的 DBContext 文件中的 appsettings.json 读取连接字符串?

c# - 正确获取磁盘大小

c# - C# : How can I pass a function name to another function to start a new thread? 中的多线程

mysql - 选择与外国 ID 匹配的两行?

asp.net-mvc - 如何在 mvc 中动态显示模型的属性?