2018-12-07
2.5登录用户验证功能设计
效果图
2.5.gif画面主要功能
新建数据库、自行查询数据库并从程序中获取数据库中用户表的完整数据。
后台数据库表结构
图片1.pngAOD.NET查询数据库的流程
- 导入命名空间;
- 定义数据库连接字符串,创建Connection对象;
- 打开连接;
- 利用Command对象的ExecuteReader()方法执行Select查询语句;
- 利用ExecuteReader()方法返回的DataReader对象读取数据,显示到界面上;
-
关闭连接。
图片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.pngADO.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: