美文网首页
2018-12-07

2018-12-07

作者: Papillon_c257 | 来源:发表于2018-12-08 20:21 被阅读0次

2.5登录用户验证功能设计

效果图

2.5.gif

画面主要功能

新建数据库、自行查询数据库并从程序中获取数据库中用户表的完整数据。

后台数据库表结构

图片1.png

AOD.NET查询数据库的流程

  1. 导入命名空间;
  2. 定义数据库连接字符串,创建Connection对象;
  3. 打开连接;
  4. 利用Command对象的ExecuteReader()方法执行Select查询语句;
  5. 利用ExecuteReader()方法返回的DataReader对象读取数据,显示到界面上;
  6. 关闭连接。


    图片2.png

重要代码片段以及详细描述

···using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace AdoNetDemo
{
public partial class DataBaseForm : Form
{
public DataBaseForm()
{
InitializeComponent();
}

    private void DataBaseForm_Load(object sender, EventArgs e)
    {
        String connStr = "Data Source=.;Initial Catalog=SuperMarketSales;Integrated Security=True";
        SqlConnection sqlConn = new SqlConnection(connStr);

        try
        {
            // 连接数据库
            sqlConn.Open();

            // 在数据库中查询USERS表
            String sqlStr = "select * from USERS";
            SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
            SqlDataReader dr = cmd.ExecuteReader();

            // 解析数据
            while (dr.Read())
            {
                String Id = dr["ID"].ToString();
                String Name = dr["NAME"].ToString();
                String Password = dr["PASSWORD"].ToString();
                String Phone = dr["PHONE"].ToString();

                // 注意是累加
                this.tb_Users.Text += Id + ", " + Name + ", " + Password + ", " + Phone + "\r\n";
            }
        }
        catch (Exception exp)
        {
            MessageBox.Show("数据库连接失败" + exp.Message);
        }
        finally
        {
            sqlConn.Close();
        }
    }

    private void tb_Users_TextChanged(object sender, EventArgs e)
    {

    }
}

}···

2.6密码修改界面功能设计

效果图

2.6.gif

描述画面主要功能,并列出支持这些功能的后台数据库表结构

图片1.png

ADO.NET更新数据库的流程

图片2.png

代码

···1.连接数据库
String connStr = "Data Source=.;Initial Catalog=SuperMarketSales;Integrated Security=True";
SqlConnection sqlConn = new SqlConnection(connStr);
try
{
// 连接数据库
sqlConn.Open();
2.构造数据库并查询
String sqlStr = "update EMPLOYEE set PASSWORD=@pwd where ID=@id";
SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
// SQL字符串参数赋值
cmd.Parameters.Add(new SqlParameter("@pwd", newPwd));
cmd.Parameters.Add(new SqlParameter("@id", UserInfo.userId));

        // 将命令发送给数据库
        int res = cmd.ExecuteNonQuery();

3.根据返回值判断是否修改成功
if (res != 0)
{
MessageBox.Show("密码修改成功");
this.Close();
}
else
{
MessageBox.Show("密码修改错误");
}
}
catch (Exception exp)
{
MessageBox.Show("访问数据库错误:" + exp.ToString());
}
finally
{
sqlConn.Close();
}
}···

其他链接

2.3:https://www.jianshu.com/p/9428b92045a8
2.4:https://www.jianshu.com/p/74edd5607899
2.9:

相关文章

网友评论

      本文标题:2018-12-07

      本文链接:https://www.haomeiwen.com/subject/eogxhqtx.html