添加MySQL到VS的C#项目中

本文介绍如何通过C#使用MySQL连接器进行数据库操作,包括安装连接器、添加库文件、执行SQL命令如查询、插入、更新、删除及清空表等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安装连接器
在mysql官网下载连接器, 这个是地址 http://dev.mysql.com/downloads/connector/net/

2.库文件添加到项目
找到安装目录下(C:\Program Files\MySQL\MySQL Connector Net 6.4.4\Assemblies\v4.0\MySql.Data.dll)
引用到项目

3.使用

using System;
using MySql.Data;
using MySql.Data.MySqlClient;


public class mysql_test
{
public static void Main()
{

    MySqlConnection mysql = getconn();

    string sqlSearch = "select * from students";
    string sqlInsert = "insert into students(name,id,address) values('测试',122,'北京')";
    string sqlUpdate = "update students set name = '成功' where id = 122";
    string sqlDelete = "delete from students where id = 122";
    string sqlTruncate = "truncate students";

    try
    {


        MySqlCommand mysqlselect = getsqlCommand(sqlSearch, mysql);
        MySqlCommand mysqlinsert = getsqlCommand(sqlInsert, mysql);
        MySqlCommand mysqlupdate = getsqlCommand(sqlUpdate, mysql);
        MySqlCommand mysqldelete = getsqlCommand(sqlDelete, mysql);
        MySqlCommand mysqlTruncate = getsqlCommand(sqlTruncate, mysql);

        mysql.Open();


        Console.WriteLine(mysql.ServerVersion + "n" + mysql.ConnectionString + "n" + mysql.Database + "n" + mysql.DataSource + "n");


        getTruncate(mysqlTruncate); //清空表
        InsertTestData(mysql);   //插入测试数据

        getResult(mysqlselect);
        Console.WriteLine();

        getDelete(mysqldelete);
        getInsert(mysqlinsert);
        getUpdate(mysqlupdate);
   //     getDelete(mysqldelete);
        getResult(mysqlselect);

        mysql.Close();
    }
    catch (MySqlException ex)
    {
        Console.Write(ex.Message);
    }

    Console.ReadLine();
}
public static void getResult(MySqlCommand mysqlcommand)
{
    MySqlDataReader reader = mysqlcommand.ExecuteReader();
    try
    {
        while (reader.Read())
        {
            if (reader.HasRows)
            {
                Console.WriteLine(" 姓名:  " + reader.GetString(1) + "  编号  " + reader.GetInt32(0) + "  地址  " + reader.GetString(2));
            }
        }
    }
    catch (MySqlException ex)
    {
        Console.WriteLine("查询失败!"+ex.Message);
    }
    finally
    {
        reader.Close();
    }
}


public static MySqlCommand getsqlCommand(string sql, MySqlConnection mysql)
{
    MySqlCommand mysqlcommand = new MySqlCommand(sql, mysql);
    return mysqlcommand;
}


public static MySqlConnection getconn()
{
    string mysqlStr = "Database=student;Data Source = 192.168.142.129;User Id=root;password=rootpassword;charset=gbk;port=3306";
    MySqlConnection mysql = new MySqlConnection(mysqlStr);
    return mysql;

}
public static void getTruncate(MySqlCommand mysqlcommand)
{
    try
    {
        mysqlcommand.ExecuteNonQuery();
    }
    catch (MySqlException ex)
    {
        string message = ex.Message;
        Console.WriteLine("清空表失败! " + message);
    }
}
public static void getUpdate(MySqlCommand mysqlcommand)
{
    try
    {
        mysqlcommand.ExecuteNonQuery();
    }
    catch (MySqlException ex)
    {
        string message = ex.Message;
        Console.WriteLine("修改数据失败! " + message);
    }
}
public static void getDelete(MySqlCommand mysqlcommand)
{
    try
    {
        mysqlcommand.ExecuteNonQuery();
    }
    catch (MySqlException ex)
    {
        string message = ex.Message;
        Console.WriteLine("删除数据失败! " + message);
    }
}

public static void getInsert(MySqlCommand mysqlcommand)
{
    try
    {
        mysqlcommand.ExecuteNonQuery();
    }
    catch (MySqlException ex)
    {
        string message = ex.Message;
        Console.WriteLine("插入数据失败! " + message);
    }
}
public static void InsertTestData(MySqlConnection mysql)
{
    int i = 0;
    while (i++ != 10)
    {
        string cmd12 = "insert into students(name,id,address) values('小王'," + i + ",'西安')";
        MySqlCommand mycmd = new MySqlCommand(cmd12, mysql);
        if (mycmd.ExecuteNonQuery() > 0)
        {
            Console.WriteLine("数据插入成功!{0}", i);
        }

    }

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值