.NET框架是一个强大的开发平台,而MySQL则是一款流行的开源关系型数据库管理系统。将这两者结合起来,可以实现跨平台的数据交互。本文将详细介绍如何在.NET应用程序中连接到MySQL数据库,并进行数据的增删改查操作。
一、准备工作
在开始之前,请确保以下准备工作已完成:
- 安装.NET开发环境:Visual Studio或其他支持.NET的开发工具。
- 安装MySQL数据库:可以从MySQL官网下载并安装。
- 安装MySQL .NET驱动:NuGet包管理器中搜索
MySql.Data并安装。
二、创建MySQL数据库和表
- 打开MySQL命令行工具,连接到本地MySQL服务器。
- 创建一个新的数据库,例如:
testdb。 - 在
testdb数据库中创建一个表,例如:users。
CREATE DATABASE testdb;
USE testdb;
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
password VARCHAR(50) NOT NULL
);
三、连接MySQL数据库
在.NET应用程序中,我们可以使用MySqlConnection类来连接MySQL数据库。
using System;
using MySql.Data.MySqlClient;
public class Program
{
public static void Main()
{
string connectionString = "server=localhost;port=3306;database=testdb;user=root;password=root;SslMode=none;";
MySqlConnection connection = new MySqlConnection(connectionString);
try
{
connection.Open();
Console.WriteLine("连接成功!");
}
catch (Exception ex)
{
Console.WriteLine("连接失败:" + ex.Message);
}
finally
{
connection.Close();
}
}
}
四、执行SQL语句
在连接到数据库后,我们可以执行SQL语句来操作数据。
1. 查询数据
using System;
using System.Data;
using MySql.Data.MySqlClient;
public class Program
{
public static void Main()
{
string connectionString = "server=localhost;port=3306;database=testdb;user=root;password=root;SslMode=none;";
MySqlConnection connection = new MySqlConnection(connectionString);
MySqlCommand command = new MySqlCommand("SELECT * FROM users", connection);
try
{
connection.Open();
MySqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine($"ID: {reader["id"]}, Username: {reader["username"]}, Password: {reader["password"]}");
}
}
catch (Exception ex)
{
Console.WriteLine("查询失败:" + ex.Message);
}
finally
{
connection.Close();
}
}
}
2. 插入数据
using System;
using System.Data;
using MySql.Data.MySqlClient;
public class Program
{
public static void Main()
{
string connectionString = "server=localhost;port=3306;database=testdb;user=root;password=root;SslMode=none;";
MySqlConnection connection = new MySqlConnection(connectionString);
MySqlCommand command = new MySqlCommand("INSERT INTO users (username, password) VALUES ('testuser', 'testpass')", connection);
try
{
connection.Open();
int result = command.ExecuteNonQuery();
if (result > 0)
{
Console.WriteLine("插入成功!");
}
else
{
Console.WriteLine("插入失败!");
}
}
catch (Exception ex)
{
Console.WriteLine("插入失败:" + ex.Message);
}
finally
{
connection.Close();
}
}
}
3. 更新数据
using System;
using System.Data;
using MySql.Data.MySqlClient;
public class Program
{
public static void Main()
{
string connectionString = "server=localhost;port=3306;database=testdb;user=root;password=root;SslMode=none;";
MySqlConnection connection = new MySqlConnection(connectionString);
MySqlCommand command = new MySqlCommand("UPDATE users SET password = 'newpass' WHERE username = 'testuser'", connection);
try
{
connection.Open();
int result = command.ExecuteNonQuery();
if (result > 0)
{
Console.WriteLine("更新成功!");
}
else
{
Console.WriteLine("更新失败!");
}
}
catch (Exception ex)
{
Console.WriteLine("更新失败:" + ex.Message);
}
finally
{
connection.Close();
}
}
}
4. 删除数据
using System;
using System.Data;
using MySql.Data.MySqlClient;
public class Program
{
public static void Main()
{
string connectionString = "server=localhost;port=3306;database=testdb;user=root;password=root;SslMode=none;";
MySqlConnection connection = new MySqlConnection(connectionString);
MySqlCommand command = new MySqlCommand("DELETE FROM users WHERE username = 'testuser'", connection);
try
{
connection.Open();
int result = command.ExecuteNonQuery();
if (result > 0)
{
Console.WriteLine("删除成功!");
}
else
{
Console.WriteLine("删除失败!");
}
}
catch (Exception ex)
{
Console.WriteLine("删除失败:" + ex.Message);
}
finally
{
connection.Close();
}
}
}
五、总结
通过本文的介绍,您应该已经掌握了如何在.NET应用程序中连接到MySQL数据库,并执行基本的CRUD操作。在实际开发中,您可以根据自己的需求进行扩展和优化。祝您在跨平台数据交互的道路上一切顺利!