我做了一些更多的研究,并提出了其他的东西。但是,这次消息框显示pwd已被更改,但是当我刷新数据库中的页面时并未更改。下面的代码:SQL服务器连接分贝
SqlConnection sqlconn = new SqlConnection();
sqlconn.ConnectionString = @" ";
sqlconn.Open();
string empCode = comboEmpCode.Text;
string oldPwd = txtOldPwd.Text;
string newPwd = txtNewPwd.Text;
string confirmPwd = txtConNewPwd.Text;
string sqlquery = "UPDATE [Employee] SET [email protected] where [email protected]";
SqlCommand cmd = new SqlCommand(sqlquery, sqlconn);
cmd.Parameters.AddWithValue("@newpass", txtNewPwd.Text);
cmd.Parameters.AddWithValue("@empcode", comboEmpCode.Text);
cmd.Parameters.AddWithValue("@oldPwd", txtOldPwd.Text);
cmd.Connection = sqlconn;
cmd.ExecuteNonQuery();
SqlDataReader reader = null;
reader = cmd.ExecuteReader();
while (reader.Read())
{
if ((txtNewPwd.Text == reader["newPwd"].ToString()) & (txtConNewPwd.Text == (reader["confirmPwd"].ToString()))) { }
}
MessageBox.Show("Password was changed Successfully!", "Password Change", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.Close();
你确实有一个ConnectionString或者你在代码中传递@“”吗? – malkassem
你是否在任何地方使用'TransactionScope'?或者在任何地方的交易?这些可能会回滚。 – Oded
如果你没有在查询中使用它,为什么你有'@ oldPwd'参数? “ExecuteReader”是什么?那不会返回任何东西。 – Oded