运行以下代码时抛出以下异常:
system.data.oledb.oledbexception标准表达式中的数据类型不匹配
private void buttonUp_Click(object sender, EventArgs e)
{
try
{
connection.Open();
OleDbCommand command = new OleDbCommand();
command.Connection = connection;
string query = "UPDATE data SET Name ='"+txtNL.Text+"' , Period ='"+txtper.Text+"' , DOB = '"+txtmonth.Text+"', price = '"+txtprice.Text+"', follow = '"+combofw.Text+"' WHERE ID = "+txtid.Text+" ";
//(ID,Name,Period,DOB,price,follow)
MessageBox.Show(query);
command.CommandText = query;
command.ExecuteNonQuery();
MessageBox.Show("Data Edited/Updated Successful");
connection.Close();
}
catch (Exception ex)
{ MessageBox.Show("Error " + ex); }
}
我该如何解决这个问题?
答案 0 :(得分:0)
您的一个输入与数据库表所期望的数据类型不匹配。例如,如果您将“abbx”作为日期文本传递,并且您的表期望DateTime,则它不会起作用。确保将输入中的类型与表格中的类型相匹配。