Accesss数据库表fee存在自增列ID.
原语句1:
string str="update fee set 项目='" + textBox1.Text.Trim() + "',费用='" + textBox2.Text.Trim() + "',收入支出='" + cbb1.Text + "' where ID='"+dataGridView1.CurrentRow.Cells[0].Value.ToString()+"' ";
结果:
失败,标准表达式中数据类型不匹配
原语句2: 考虑到该自增列是长整形,打算转化为int32
string str="update fee set 项目='" + textBox1.Text.Trim() + "',费用='" + textBox2.Text.Trim() + "',收入支出='" + cbb1.Text + "' where ID='"+Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value.ToString())+"' ";
结果:
失败,标准表达式中数据类型不匹配
原语句3: 解决办法,分语句
string str="update fee set 项目='" + textBox1.Text.Trim() + "',费用='" + textBox2.Text.Trim() + "',收入支出='" + cbb1.Text + "' where ID=";
str=str +dataGridView1.CurrentRow.Cells[0].Value.ToString();
相当于把原语句1分拆了,Access真0疼。
结果:
成功
讨论了使用Access数据库时遇到的ID自增列更新问题,通过将原始语句分拆为多个部分来解决数据类型不匹配的问题,最终实现了成功更新。
584

被折叠的 条评论
为什么被折叠?



