C#修改密码 修改
using System;using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsFormsApplication1
{
public partial class Form5 : Form
{
public Form5()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox2.Text.Trim().Length == 0 || textBox3.Text.Trim().Length == 0 || textBox4.Text.Trim().Length == 0)
{
MessageBox.Show("请输入完整!");
return;
}
if (textBox3.Text.Trim() != textBox4.Text.Trim())
{
MessageBox.Show("两次密码输入不一致!");
return;
}
String ConnString = "Data Source=.;Initial Catalog=WageManage;User ID=sa;password=147258369;";
SqlConnection conn = new SqlConnection(ConnString);
DataTable dt = new DataTable();
String sql = "SELECT * FROM stuff where StuffID= StuffID and Password = " + textBox2.Text.Trim();
try
{
SqlDataAdapter da = new SqlDataAdapter(sql, conn);
da.Fill(dt);
}
catch (Exception Err)
{
MessageBox.Show(Err.Message);
}
if (dt.Rows.Count == 0)
{
MessageBox.Show("旧密码输入错误!");
dt.Dispose();
}
else
{
sql = "UPDATE Stuff set Password ='" + textBox3.Text.Trim() + "' where StuffID= '" + "'";
SqlCommand cmd = new SqlCommand();
cmd.CommandText = sql;
cmd.Connection = conn;
try
{
conn.Open();
cmd.ExecuteNonQuery();
}
catch (Exception Err)
{
MessageBox.Show("更新出现异常!");
}
finally
{
conn.Close();
}
MessageBox.Show("密码更新成功!");
}
}
private void button2_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
this.Hide();
if (frm2.ShowDialog() == DialogResult.OK)
{
this.Show();
}
}
private void Form5_Load(object sender, EventArgs e)
{
}
}
}
点了修改之后提示成功但是数据库数据却没有变化 求大神指点 --------------------编程问答-------------------- cmd.ExecuteNonQuery();会返回一个整数的,你可以看一下这个整数是多少,如果为0说明你的SQL语句执行成功,有可能在数据库中没有where条件的数据,还有就是你那个拼接语句,正确?否? --------------------编程问答-------------------- sql = "UPDATE Stuff set Password ='" + textBox3.Text.Trim() + "' where StuffID= '" + "'";少个条件 --------------------编程问答-------------------- 下断点调试程序,这贴好像回复过了。 --------------------编程问答--------------------
不得不说楼主真有分啊!哈哈,还是一样的道理 --------------------编程问答-------------------- 首先建议LZ不要真么写代码,看着真头疼,不同的功能分开写,别都写在一个button1下了。可以写个类借口,这样容易扩展,说不定以后变更了,需要输入密码提示问题或则邮箱等的。。。只是建议。
问题描述
sql = "UPDATE Stuff set Password ='" + textBox3.Text.Trim() + "' where StuffID= '" + "'";
StuffID=后的条件不完整吧。
程序里可以做判断的。cmd.ExecuteNonQuery();会返回数据库响应的行数。如果大于0就说明数据库里有数据被更新了。
int Exec=cmd.ExecuteNonQuery();
if(Exec>0)
{执行提示。。。}
else
{插入错误日志。。。}
--------------------编程问答--------------------
upup
补充:.NET技术 , C#