2018-12-18

《2.5 登录用户验证功能设计》具体要求:

1. 贴效果图,最好是GIF文件


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

主要功能:验证用户登录

表结构:  收银员表:工号(主键),姓名,密码,电话  库管员表:工号(主键),姓名,密码,电话

3. ADO.NET查询数据库的流程

方法一

导入命名空间;

运用Connection对象建立与数据库连接;

打开连接;

利用Command对象的ExecuteReader()方法执行Select查询语句;

利用ExecuteReader()方法返回的DataReader对象读取数据,显示到界面上;

关闭连接。

方法二

通过Connection对象建立与数据库的连接

利用Command对象执行SQL语句或存储过程

.通过DataReader对象将Command对象执行SQL语句查询后的具体数据从数据库中一条一条读取到DaraReader对象中

在客户端将数据呈现出来

4. 贴入重要代码片段,并进行详细描述

//连接数据库

sqlConn.Open();

String SqlStr = "";

if (this.comboBox1.Text == "收银员")

{

//注意USER是SQL Sever关键字,表名不能命名为USER,而应当用USERS

SqlStr = "select * from EMPLOYEE where ID=@id and  password=@pwd";

}

else

{

SqlStr = "select * from EMPLOYEE where ID=@id and  password=@pwd";

}

//执行SQL语句

SqlCommand cmd = new SqlCommand(SqlStr,sqlConn);

//为SQL语句中的参数赋值

cmd.Parameters.Add(new SqlParameter("@id", this.textBox1.Text.Trim()));

cmd.Parameters.Add(new SqlParameter("@pwd", this.textBox2.Text.Trim()));

SqlDataReader dr = cmd.ExecuteReader();

// 如果从数据库中查询到记录,则表示可以登录

if (dr.HasRows)

{

dr.Read();

//将数据库中的字段赋值给C#中的参数

userid = dr["id"].ToString();

String userName = dr["name"].ToString();

String userPwd = dr["password"].ToString();

String userPhone = dr["tel"].ToString();

String userType = this.comboBox1.Text;

MessageBox.Show(userType + "登录成功");

// 处理登录,判断用户类型

if (userType == "收银员")

{

//MessageBox.Show("登录成功123");

// 显示收银员主界面

Form3 formUser = new Form3();

formUser.Show();

// 隐藏登录界面

this.Hide();

}

if (userType == "经理")

{

// 显示经理主界面

Form2 formAdmin = new Form2();

formAdmin.Show();

// 隐藏登录界面

this.Hide();

}

}

《2.6 密码修改界面功能设计》具体要求:

1. 贴效果图,最好是GIF文件


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

用户名直接显示不能更改,输入新密码,再确认密码,两次一样才能确定更改成功

图片8.png

3. ADO.NET更新数据库的流程

导入命名空间;

定义数据库连接字符串,运用Connection对象建立与数据库连接;

打开连接;

利用Command对象的ExecuteNoQuery()方法执行Update语句;

通过ExecuteNoQuery()方法返回值判断是否修改成功,并在界面上提示;

关闭连接

4. 贴入重要代码片段,并进行详细描述

if (newPwd.Equals(""))

{

MessageBox.Show("请输入新密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);

return;

}

else if (confPwd.Equals(""))

{

MessageBox.Show("请输入确认密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);

return;

}

else if(newPwd != confPwd)

{

MessageBox.Show("两次密码不一致", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);

return;

}

// 连接字符串,注意与实际环境保持一致

stringconnStr = "Data Source=.;Initial Catalog=ldz2017270397;Integrated Security=True";

SqlConnectionsqlConn = new SqlConnection(connStr);

try

{

//连接数据库

sqlConn.Open();

// 构造UPDATE命令

StringsqlStr = "update EMPLOYEE set password=@pwd where id=@id";

SqlCommandcmd = new SqlCommand(sqlStr, sqlConn);

// SQL字符串参数赋值

cmd.Parameters.Add(new SqlParameter("@pwd", newPwd));

cmd.Parameters.Add(new SqlParameter("@id", userName));

// 将命令发送给数据库

intres = cmd.ExecuteNonQuery();

// 根据返回值判断是否修改成功

if(res != 0)

{

MessageBox.Show("密码修改成功");

this.Close();

}

else

{

MessageBox.Show("密码修改错误");

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目录 [任务目标]****2 (1) 掌握应用系统设计流程;****2 (2) 回顾设计过程中的知识点:窗口、控件...
    647e7f79ed39阅读 236评论 1 0
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,554评论 0 17
  • “区块链”作为2018年最被关注的行业,许多人对于这个陌生的领域,都会用带有千万种疑问的眼光去看待它,尤其是对一些...
    山高云飞阅读 228评论 0 0
  • |项目| |2.6|登陆用户验证功能设计 2.6.1登录界面效果图 2.6.2 2.6.2.1本次界面的主要功能:...
    菰昕阅读 576评论 0 0
  • 无意中看到我们这期理财班的宣传,果断报名。原意是想在理财上有一个体系化的知识架构,因为我自身跌跌撞撞理财也有两年多...
    5197云清阅读 754评论 0 2