WinForm连MySQL进行登录检查的方法总结

最近在使用WinForm的时候,打算做一个完美的登录系统。正好上到假期,我通过3天的时间,将网上的内容尝试了一边,最后通过每天的结合和探索,总结出来了下面的方法。

准备任务:

1.在MySQL官方网站下载MySQL的安装包。我这里使用的是MySQL8.0 大家可以在这里下载:

https://dev.mysql.com/downloads/mysql/icon-default.png?t=M666https://dev.mysql.com/downloads/mysql/,安装步骤见(2条消息) Mysql安装教程(win10,64位)_Lisa_LJJ的博客-CSDN博客icon-default.png?t=M666https://blog.csdn.net/Lisa_LJJ/article/details/93720163

2.我这里使用的是Navicat Premium 16连接MySQL. Navicat Premium 16的下载方式:Navicat | 下载 Navicat Premium 14 天免费 Windows、macOS 和 Linux 的试用版icon-default.png?t=M666https://navicat.com.cn/download/navicat-premium

3.Visual Studio 2019 下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)icon-default.png?t=M666https://visualstudio.microsoft.com/zh-hans/downloads/

 

二,开始

1.在Visual Studio中创建WinForm窗体。

2.待WinForm项目载入完成后,右键项目,然后管理NuGet程序包。

 

 

3.在NuGet程序包中,点击浏览,输入MySQL字样,等待查找完成。点击安装到你的项目中。

小提示:这个地方,我刚开始创建项目用的是.NET Framework 4.0往下,因此我选择了最旧的版本,但是这样我这边使用MySql.Data这个插件的时候总是出现问题。我目前项目是用的.NET Framework 4.7 安装MySql.Data 8.0.29版本是没有问题的,使用方面基本没问题。

4.安装完成后,我们可以进入下一步。(到这里基本是没有问题的吧)

二·一:

1.安装完成MySql.Data后,我们在Form1中放置下面几个工具。

①TextBox ②Label ③Button如图所示:

 2.我们需要对放置好的工具进行命名,这样更利于我们方便于使用。(这里我参考(2条消息) C#连接mysql数据库实现登陆注册界面【小白教程之代码注释篇】_Syvlia005的博客-CSDN博客icon-default.png?t=M666https://blog.csdn.net/weixin_46065358/article/details/106714511?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-3-106714511-blog-106652017.pc_relevant_multi_platform_whitelistv1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-3-106714511-blog-106652017.pc_relevant_multi_platform_whitelistv1&utm_relevant_index=6

(2条消息) C#连接mysql数据库实现登陆注册界面【小白教程】_Syvlia005的博客-CSDN博客icon-default.png?t=M666https://blog.csdn.net/weixin_46065358/article/details/106652017?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165728063016782350887932%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165728063016782350887932&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-106652017-null-null.185^v2^control&utm_term=C%23%E8%BF%9E%E6%8E%A5mysql%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AE%9E%E7%8E%B0%E7%99%BB%E9%99%86%E6%B3%A8%E5%86%8C%E7%95%8C%E9%9D%A2%E3%80%90%E5%B0%8F%E7%99%BD%E6%95%99%E7%A8%8B&spm=1018.2226.3001.4450账号后面的TextBox:txtUserName 

密码后面的TextBox:txtPassword

我目前就命名了这两个。下面,我们进入编写。

== 前提:引用 using MySql.Data.MySqlClient; ==(这里非常重要)

双击”登录“按钮,进入编写。

这里各位可以参考上面发的连个连接。我也是根据他的顺利做出来的。

private void button2_Click(object sender, EventArgs e)
        {
            string userName = this.txtUserName.Text;
            string userPassword = this.txtPassword.Text;

 if (userName.Equals("") || userPassword.Equals(""))
            {
                MessageBox.Show("用户名或密码不能为空!");
            }

            else
            {
                //这里是你的MySQL信息
                string strcon = "server=localhost;database=demo;uid=用户名;pwd=密码;";
                MySqlConnection con = new MySqlConnection(strcon);
                try
                {
                    con.Open(); 
                    string sqlSel = "select count(*) from demo.user where userName = '" + userName + "' and password = '" + userPassword + "'";
                    MySqlCommand com = new MySqlCommand(sqlSel, con);

                   
                    if (Convert.ToInt32(com.ExecuteScalar()) > 0)
                    {
                        MessageBox.Show("成功!");
                        this.DialogResult = DialogResult.OK;
                        this.Dispose();
                        this.Close();
                    }
                    else
                    {
                        MessageBox.Show("用户名或密码错误!");
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message.ToString() + "打开数据库失败");
                }
            }
        }

这里是我参考(2条消息) C#连接mysql数据库实现登陆注册界面【小白教程之代码注释篇】_Syvlia005的博客-CSDN博客 制作的。各位要注意的有: ①你的MySQL信息必须填写充分;②MySQL语句语法;

③  string sqlSel = "select count(*) from demo.user where userName = '" + userName + "' and password = '" + userPassword + "'";   这个是select count(*),demo.user是我MySQL的信息。这里,demo是数据库名,user是这个demo数据库中表的名称。

二·二:通过Navicat Premium 16连接MySql

下载好Navicat Premium 16,如图点击连接——MySQL

 

 

这里输入你的MySQL信息。

连接好后,我们可以开始工作:

1.右键连接好的MySQL,点击新建数据库,我这里以demo为标准,字符集选择utf8

2.右键demo中的表,新建。然后在弹出来的框中输入:

name,varchar,20, ,不是null(打勾)

password,varchar,20, ,不是null(打勾)

然后保存表名为user.进入表user中。

在name栏可以随便输入一些内容,PASSWORD中也输入一些随便的东西。我这里,name以EEE为主,password以123456为主。记得保存。Navicat Premium 16操作台下有个点击可以新建。

这里创建完成,再返回上面的代码编写工作中。最后我的测试结果是:

 

 

祝各位顺利完成! 

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值