C#连接Mysql数据库详细教程(内附Mysql及Navicat)

 更新时间:2023年10月19日 11:49:52   作者:Cris Li  
这篇文章主要给大家介绍了C#连接Mysql数据库详细教程(内附Mysql及Navicat),文中通过代码示例和图文介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下

课上教学使用的是SqlServer数据库,由于SqlServer数据库配置难以理解,故学习使用Mysql代替数据库连接。(Mysql以及Navicat安装说明在压缩包内)

会自动在C:\Program Files (x86)\MySQL\MySQL Connector Net 6.9.0这个路径(貌似...)

之后就需要在VS的引用中引用这一文件,然后就可以进行数据库的连接操作了。

首先新建项目,选择Windows窗体应用程序创建一个窗体

将窗体加上组件设置为下图所示样式(可以自由发挥,只要包含相关输入即可)

创建connect.cs的类文件(这里是我为后续创建信息系统方便设置的集成类,可以通过调用该类少写些代码)

其中需要在开头加入using MySql.Data.MySqlClient;

并在类中定义好三个对象

public MySqlConnection conn = null;//连接对象
public MySqlCommand comm = null;//语句执行对象
public MySqlDataReader dr = null;//语句执行结果数据对象

再使用load()方法封装连接过程,这里就需要自行输入数据库的相关信息

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data.MySqlClient;
 
namespace DataBaseManager
{
    class connect
    {
        public MySqlConnection conn = null;//连接对象
        public MySqlCommand comm = null;//语句执行对象
        public MySqlDataReader dr = null;//语句执行结果数据对象
 
        //用于一个窗口让用户自定义输入用户名与密码,在这里我直接定义好了
        //public string uid;
        //public string pwd;
 
        public void load()
        {
            //直接写链接语句,比较容易出错
            //conn = new MySqlConnection(
            //    "Database = data;Server = localhost;Port = 3306;Password = " + pwd + ";UserID = " + uid + ";charset = utf8mb4");
            //conn.Open();
 
            //使用Builder写语句,实现分段
            //与数据库连接的信息
            MySqlConnectionStringBuilder builder = new MySqlConnectionStringBuilder();
            //数据库连接时的用户名,可以用pid
            builder.UserID = "root";
            //数据库连接时的密码,可以用pwd
            builder.Password = "admin";
            //数据库连接时的服务器地址
            builder.Server = "localhost";
            //要连接的数据库
            builder.Database = "data";
            //定义与数据连接的链接
            conn = new MySqlConnection(builder.ConnectionString);
            //打开这个链接
            conn.Open();
 
        }
    }
}

之后双击窗体中的button,定义输入方法验证连接。

 private void button1_Click(object sender, EventArgs e)
        {
            //con.uid = textBox1.Text;
            //con.pwd = textBox2.Text;
 
            //调用load方法建立open连接
            con.load();
            //查询语句,查询用户名与密码,这里的ls可以是textBox1.Text
            string sql = "select * from user_info where username ='ls';";
            con.comm = new MySqlCommand(sql, con.conn);
            con.dr = con.comm.ExecuteReader();
            con.dr.Read();
 
            //验证密码,同理,这里的123可以是textBox2.Text,因为我数据库设置的密码与账号是ls 与 123 所以无论输入什么都是登陆成功
            if ("123" == con.dr.GetString("password"))
            {
                MessageBox.Show("登录成功!");
                con.dr.Close();
                this.Close();//关闭此窗口,方便弹出主窗口
            }
            else
                MessageBox.Show("登录失败!");
        }

如果你在connect中输入信息有误,一般会出现如下错误,此时就需要检查账号密码是否正确

而如果数据库输入错误,会显示这个错误

最后是相关数据库,user_info表的结构,可以在引用完dll文件后后创建这个数据库直接测试该C#窗体文件

另外,在压缩包中还放入了一个简易的具备CRUD功能的学生信息系统,可以在深入学习后使用它进行体验

下为学生信息的表结构,相关信息可以自己输入

链接:https://pan.baidu.com/s/1Yg1aSgiydHQ1bevX5r3QCQ

提取码:xyz3

以上就是C#连接Mysql数据库详细教程(内附Mysql及Navicat)的详细内容,更多关于C#连接Mysql数据库的资料请关注脚本之家其它相关文章!

相关文章

  • C#控件编程之文本框(TextBox)的使用

    C#控件编程之文本框(TextBox)的使用

    这篇文章主要介绍了C#控件编程之文本框(TextBox)的使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • c# 调用.bat文件的实现代码

    c# 调用.bat文件的实现代码

    c# 调用.bat文件主要利用了using System.Diagnostics;命名空间,大家可以参考下。
    2009-06-06
  • C#应用BindingSource实现数据同步的方法

    C#应用BindingSource实现数据同步的方法

    这篇文章主要介绍了C#应用BindingSource实现数据同步的方法,需要的朋友可以参考下
    2014-08-08
  • C# 泛型参数转换

    C# 泛型参数转换

    本文介绍了C# 泛型参数转换的相关知识,具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • 基于C#实现PDF文件合并工具

    基于C#实现PDF文件合并工具

    这篇文章主要为大家详细介绍了如何基于C#实现一个简单的PDF文件合并工具,文中的示例代码简洁易懂,有需要的小伙伴可以跟随小编一起学习一下
    2025-01-01
  • C#使用iTextSharp库将图片转换为PDF

    C#使用iTextSharp库将图片转换为PDF

    iTextSharp 是一个开源的 .NET 库,主要用于创建和操作 PDF 文档,本文主要介绍了如何使用 C# 和 iTextSharp 将图片转换为 PDF 的功能,需要的可以参考下
    2024-12-12
  • 使用C#和Jieba.NET实现中英文混合文本关键词的提取功能

    使用C#和Jieba.NET实现中英文混合文本关键词的提取功能

    Jieba.NET 是一个在 C# 中实现的分词库,它基于 Java 的 jieba 分词库,并进行了 C# 语言的移植,Jieba 是一个高效的中文分词工具,能够处理全模式、精确模式以及搜索引擎模式,本文给大家介绍了如何使用C#和Jieba.NET实现中英文混合文本关键词的提取功能
    2025-03-03
  • C#中两个byte如何相加

    C#中两个byte如何相加

    可能有的看到这个题目就会觉得这不简单吗?直接用+号相加就行了,可是当你实际操作运行的时候就会发现有错误了,那么是什么错误?那该如何让C#中两个byte相加呢?通过下面这篇文章来一起学习学习吧。
    2016-11-11
  • C#中如何正确的使用字符串String

    C#中如何正确的使用字符串String

    这篇文章主要给大家介绍了关于在C#中如何正确的使用字符串String的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • C#实现屏幕拷贝的方法

    C#实现屏幕拷贝的方法

    这篇文章主要介绍了C#实现屏幕拷贝的方法,实例分析了两种常用的屏幕拷贝实现技巧,需要的朋友可以参考下
    2015-06-06

最新评论