一般的数据库应用程序都应该提供用户密码修改功能,当用户需要的时候可以更改自己的密码。
窗体设计如下:
功能实现的基本逻辑是:用户密码修改时,应该首先判断用户输入的原始密码是否正确。如果正确,且两次输入的新密码一致,则允许用户更新密码。
具体的代码实现:
private void btnSave_Click(object sender, EventArgs e)
{
if (txtOldPwd .Text .Trim ()!=UserHelper .password )
{
MessageBox.Show("原始密码错误!");
txtOldPwd.Focus();
return;
}
if (txtNewPwd .Text .Trim ()=="")
{
MessageBox.Show("新密码不能为空,请输入!");
txtNewPwd.Focus();
return ;
}
if (txtNewPwdAgain.Text.Trim() != txtNewPwd.Text.Trim()) ;
{
MessageBox.Show("两次密码输入不一致,请重新输入!");
txtNewPwdAgain.Focus();
return;
}
using (SqlConnection conn=new SqlConnection (DBHelper .connString ))
{
string sql = string.Format("update [User] set Password='{0}' where UserName='{1}'", txtNewPwd.Text.Trim(), UserHelper.userName);
SqlCommand cmd = new SqlCommand(sql, conn);
conn.Open();
int n = Convert.ToInt32(cmd.ExecuteNonQuery());
if (n!=1)
{
MessageBox.Show("密码修改失败!");
}
else
{
MessageBox.Show("密码修改成功!");
UserHelper.password = txtNewPwd.Text.Trim();
}
}
}
private void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}