我在将十进制值插入我的 Access 数据库版本 (2007 - 2010) 时遇到问题。
假设我的文本框中有以下值:
txtTotalAmount.Text = 3,5
txtSalesTax.Text = 3,6
txtTotalToPay.Text = 3,7
但是,数据库值显示:
TotalAmount as 35
SalesTax as 36
TotalToPay as 37
我的数据库设置如图所示。
这是我的代码:
private void button1_Click(object sender, EventArgs e)
{
try
{
string connstring = ConfigurationManager.ConnectionStrings["Db"].ConnectionString;
using (OleDbConnection conn = new OleDbConnection(connstring))
{
conn.Open();
using (OleDbCommand cmd = new OleDbCommand("INSERT INTO [OrderItem](TotalAmount, SalesTax, TotalToPay) VALUES(@TotalAmount, @SalesTax, @TotalToPay)", conn))
{
cmd.Parameters.AddWithValue("@TotalAmount", Convert.ToDecimal(txtTotalAmount.Text));
cmd.Parameters.AddWithValue("@SalesTax", Convert.ToDecimal(txtSalesTax.Text));
cmd.Parameters.AddWithValue("@TotalToPay", Convert.ToDecimal(txtTotalToPay.Text));
cmd.ExecuteNonQuery();
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
我什至试过这样;
cmd.Parameters.AddWithValue("@TotalToPay", decimal.Parse(txtToPay.Text));
和
cmd.Parameters.AddWithValue("@SalesTax", OleDbType.Decimal).Value = Convert.ToDecimal(txtTest.Text);
但是遇到同样的问题。请帮忙。
MMMHUHU
慕田峪9158850
相关分类