C#窗体应用:登录功能+连接sql数据库

1.前端控件
需要两个label,
两个textbox分别命名为textbox_No,text_Pwd,
以及一个button命名为btn_Sumbit
控件最好一开始就进行命名,方便代码的阅读及编写。
在这里插入图片描述
2.数据库准备
建库部分代码:建库部分代码建表、插入数据、查询代码
用户表的建立、数据的增和查3.C#代码准备
①数据库连接的配置,具体可参考我之前的博客。
首先配置app.config里的连接字符串,然后添加引用。
接着在Login的代码页面添加引用

using System;
using System.Configuration;
using System.Data.SqlClient;
using System.Windows.Forms;

②数据库连接
首先要new一下连接器

SqlConnection sqlConnection = new SqlConnection();

配置sqlConnection,其中“sql”就是我们之前在App.config中配置的连接字符串名称。

sqlConnection.ConnectionString = 
ConfigurationManager.ConnectionStrings["Sql"].ConnectionString;			

③新建委托

第一行代码表明cmd是根据sqlConnection建立的委托,可以访问sqlConnection所连接的数据库。
第二行代码表明委托内容,
$保证可以引用该窗体的变量、控件。
如果文本框中输入的账号密码存在,则返回结果1,否则返回0。

SqlCommand cmd = sqlConnection.CreateCommand();
cmd.CommandText = $"select count(1) from tb_User where No='{this.txb_No.Text}' and Password = '{this.txb_Pwd.Text}'";`

④执行委托
打开数据库、关闭数据库,并在中间执行委托。最好Open后就Close,再在中间进行代码的编写,这样可以及时关闭数据库,避免了资源的浪费。
ExecuteScalar返回查询的第一个单值,此时账号密码都正确返回值为1,否则为0。

sqlConnection.Open();
//查询返回结果
int result = (int)cmd.ExecuteScalar();
sqlConnection.Close();

⑤判断返回值,登陆成功则跳转至主窗体,并关闭登录窗体。

if (result == 1)
			{
				MessageBox.Show("登录成功。");
				_No = this.txb_No.Text.Trim();
				this.DialogResult = DialogResult.OK;
				this.Close();
			}
			else MessageBox.Show("用户名/密码错误!");

4.其他一些细节补充
将textbox的PasswordChar属性设置为星号,即可在输入时隐藏密码。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200326025932185.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDkxNjE4NQ==,size_16,color_FFFFFF,t_70)![在这里插入图片描述](https://img-blog.csdnimg.cn/20200326030030929.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDkxNjE4NQ==,size_16,color_FFFFFF,t_70)此外,还可判断空值并选中、密码错误时选中并清空......

```csharp
if (this.txb_No.Text.Trim() == "")
			{
				MessageBox.Show("用户名不能为空!");
				this.txb_No.Focus();  //获取焦点
			}
			if (this.txb_Pwd.Text.Trim() == "")
			{
				MessageBox.Show("密码不能为空!");
				this.txb_Pwd.Focus();
			}

以上,感谢阅读!

发布了4 篇原创文章 · 获赞 0 · 访问量 44
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览