当前位置: 代码网 > it编程>编程语言>Asp.net > C#连接MySQL数据库的完整过程

C#连接MySQL数据库的完整过程

2026年09月29日 • Asp.net •我要评论
一、安装mysql驱动在vs2022中,右键项目→管理 nuget 程序包,搜索并安装“mysql.data”,这是mysql官方的ado.net驱动,安装后就可以直

一、安装mysql驱动

在vs2022中,右键项目 → 管理 nuget 程序包,搜索并安装“mysql.data”,这是mysql官方的ado.net驱动,安装后就可以直接使用了。

二、数据库连接配置

在app.config的<configuration> 节点内添加数据库配置信息。

<connectionstrings>
    <add name="mydbconn"
         connectionstring="server=localhost;port=3306;database=你的数据库名;uid=你的用户名;pwd=你的密码;"
         providername="mysql.data.mysqlclient" />
</connectionstrings>

字段说明

server:mysql服务器地址

port:数据库连接端口,默认是3306

database:要连接的数据库名

uid/pwd:mysql的用户名和密码

注意:providername必须是mysql.data.mysqlclient,少了这个配置管理器可能读不到。

三、实例

在代码顶部引入using mysql.data.mysqlclient; 和 using system.configuration;

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.xml.linq;
using static system.windows.forms.visualstyles.visualstyleelement.startpanel;
using mysql.data.mysqlclient;
using system.configuration;

namespace test
{
    public partial class linkmysql : form
    {
        public linkmysql()
        {
            initializecomponent();
        }

        // 登录
        private void login_click(object sender, eventargs e)
        {
            // 接收前端传过来的值
            string username = this.username.text;   // 用户名
            string password = this.password.text;   // 密码
            // messagebox.show(username, "username");

            // 从 app.config 读取连接字符串
            string connstr = configurationmanager.connectionstrings["mydbconn"].connectionstring;

            try
            {
                using (mysqlconnection conn = new mysqlconnection(connstr)) {
                    //打开连接
                    conn.open();

                    // 查询user表,使用占位符
                    string sql = "select * from user where username = @username and status = @status";
                    using (mysqlcommand cmd = new mysqlcommand(sql, conn)) {

                        // where条件
                        cmd.parameters.addwithvalue("@username", username);
                        cmd.parameters.addwithvalue("@status", 1);

                        // 读取数据行
                        using (mysqldatareader reader = cmd.executereader()) {

                            // 如果查到这个用户
                            if (reader.read())
                            {

                                //取出数据库中的密码
                                string dbpassword = reader["password"].tostring();

                                // 判断数据库中的密码
                                if (dbpassword == password)
                                {
                                    messagebox.show("登录成功!", "提示", messageboxbuttons.ok, messageboxicon.information);
                                    // 这里可以跳转新窗口
                                    index index = new index();
                                    this.hide();          // 隐藏当前窗口
                                    index.showdialog();   // 显示新窗口(模态)
                                    this.close();         // 新窗口关闭后,关闭当前窗口
                                }
                                else
                                {
                                    messagebox.show("密码错误!", "提示", messageboxbuttons.ok, messageboxicon.warning);
                                }
                            }
                            else {
                                messagebox.show("用户不存在!", "提示", messageboxbuttons.ok, messageboxicon.warning);
                            }
                        }
                    }
                }                    
            }
            catch (exception ex)
            {

                messagebox.show($"数据库连接失败:{ex.message}", "错误",messageboxbuttons.ok, messageboxicon.error);
            }

        }
    }
}

到此这篇关于c#连接mysql数据库的完整过程的文章就介绍到这了,更多相关c#连接mysql数据库内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

赞 (0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com