0

当我尝试将十进制数从 c# 保存到 sql 数据库时遇到问题。首先,我将字符串转换为十进制,当我尝试将该十进制保存到 sql 数据库时出现问题。例如,如果我尝试保存 3.24,在数据库中它显示为 324.00 这是代码的一部分,请帮助...我已经尝试将类型从十进制更改为数字,而不是 convert.ToDecima decimal.Parse

        decimal cijena_uzine = Convert.ToDecimal(textBox1.Text, CultureInfo.InvariantCulture.NumberFormat);

        try
        {
            spremi_cijenu_obroka.Open();
            cmd = new SqlCommand("Update Vrsta_Obroka set cijena="+ cijena_uzine + " where Šifra_Obroka=1 ;", spremi_cijenu_obroka);
4

2 回答 2

1

我只是在猜测,但您可能输入数字时3,24使用逗号作为小数点分隔符(正如欧洲大多数国家所做的那样)。

324您使用CultureInfo.InvariantCulture.NumberFormat.

将您的代码更改为以下以使用您的文化:

decimal cijena_uzine = Convert.ToDecimal(textBox1.Text, System.Globalization.CultureInfo.CurrentCulture);
于 2013-10-30T01:00:19.687 回答
0

我将变量保留为字符串,它以某种方式工作......

string cijena_uzine = textBox1.Text;             
        try
        {
            spremi_cijenu_obroka.Open();
            cmd = new SqlCommand("Update Vrsta_Obroka set cijena=" +cijena_uzine + " where Šifra_Obroka=1 ;", spremi_cijenu_obroka);
于 2013-10-30T21:31:22.830 回答