小弟根据要求,使用update语句来修改Access数据库中员工的信息,代码如下
//修改员工信息
private void button1_Click(object sender, EventArgs e)
{
OleDbCommand ocm11;
occ.Open();
string update = "update EmpInfo set E_Name=@11,E_Sex=@12,Department=@13,E_Tel=@14,E_add=@15,E_Title=@16 where ID=@17";
ocm11 = new OleDbCommand(update, occ);
ocm11.Parameters.AddWithValue("@11", tbname.Text.ToString());
ocm11.Parameters.AddWithValue("@12", cbsex.Text.ToString());
ocm11.Parameters.AddWithValue("@13", cbdep.Text.ToString());
ocm11.Parameters.AddWithValue("@14", tbtel.Text.ToString());
ocm11.Parameters.AddWithValue("@15", tbadd.Text.ToString());
ocm11.Parameters.AddWithValue("@16", cbtit.Text.ToString());
ocm11.Parameters.AddWithValue("@17", tbID.Text.ToString());
int flag = ocm.ExecuteNonQuery();
if (flag > 0)
{
MessageBox.Show("修改成功");
occ.Close();
BindData();
return;
}
else
{
MessageBox.Show("修改失败!请重试!", "提示!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
occ.Close();
return;
}
}可不知道为何,每次运行的时候都是失败,断点测试后,发现flag为0,但又不知怎么修改,望大神指教。
附上数据库截图C#Visual Studio 2010数据库
//修改员工信息
private void button1_Click(object sender, EventArgs e)
{
OleDbCommand ocm11;
occ.Open();
string update = "update EmpInfo set E_Name=@11,E_Sex=@12,Department=@13,E_Tel=@14,E_add=@15,E_Title=@16 where ID=@17";
ocm11 = new OleDbCommand(update, occ);
ocm11.Parameters.AddWithValue("@11", tbname.Text.ToString());
ocm11.Parameters.AddWithValue("@12", cbsex.Text.ToString());
ocm11.Parameters.AddWithValue("@13", cbdep.Text.ToString());
ocm11.Parameters.AddWithValue("@14", tbtel.Text.ToString());
ocm11.Parameters.AddWithValue("@15", tbadd.Text.ToString());
ocm11.Parameters.AddWithValue("@16", cbtit.Text.ToString());
ocm11.Parameters.AddWithValue("@17", tbID.Text.ToString());
int flag = ocm.ExecuteNonQuery();
if (flag > 0)
{
MessageBox.Show("修改成功");
occ.Close();
BindData();
return;
}
else
{
MessageBox.Show("修改失败!请重试!", "提示!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
occ.Close();
return;
}
}可不知道为何,每次运行的时候都是失败,断点测试后,发现flag为0,但又不知怎么修改,望大神指教。
附上数据库截图C#Visual Studio 2010数据库
原因可能又几个
一个是你的sql写的有问题
第二个就是你update的id不存在 就是这样
上面那个条件,命中记录数为0,所以更新条数为0
现在只能推测是sql语句的where条件没有任何数据。