当前位置:编程学习 > C#/ASP.NET >>

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= '" + "'";少个条件 --------------------编程问答-------------------- 下断点调试程序,这贴好像回复过了。 --------------------编程问答--------------------
引用 2 楼  的回复:
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
 {插入错误日志。。。}
--------------------编程问答--------------------
引用 5 楼  的回复:
首先建议LZ不要真么写代码,看着真头疼,不同的功能分开写,别都写在一个button1下了。可以写个类借口,这样容易扩展,说不定以后变更了,需要输入密码提示问题或则邮箱等的。。。只是建议。

问题描述
sql = "UPDATE Stuff set Password ='" + textBox3.Text.Trim() + "' where StuffID= '" + "'";

Stuf……



upup
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,