.NET如何连接MySQL数据库并执行CRUD操作

畫卷琴夢
发布: 2025-11-21 17:51:06
原创
541人浏览过
.NET连接MySQL需安装MySql.Data,配置连接字符串后,通过MySqlConnection和MySqlCommand实现增删改查,使用参数化查询并确保连接打开及资源释放。

.net如何连接mysql数据库并执行crud操作

.NET 连接 MySQL 数据库并执行增删改查(CRUD)操作,主要依赖于 MySql.Data 或更现代的 MySqlConnector 类库。下面以常用的 MySql.Data 为例,介绍如何在 .NET(如 .NET 6+ 或 .NET Framework)项目中连接 MySQL 并实现基本的 CRUD 操作。

安装 MySQL 数据提供程序

在开始前,需要通过 NuGet 安装 MySQL 的 ADO.NET 驱动:

  • 打开项目目录,在命令行运行:
    dotnet add package MySql.Data
  • 或在 Visual Studio 的 NuGet 包管理器中搜索并安装 MySql.Data

配置数据库连接字符串

appsettings.json 或代码中定义连接字符串:

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=localhost;Database=testdb;Uid=root;Pwd=yourpassword;"
  }
}
登录后复制

如果使用 appsettings.json,需在程序启动时读取配置。例如在控制台应用中可手动写入连接字符串:

ShopEx助理
ShopEx助理

一个类似淘宝助理、ebay助理的客户端程序,用来方便的在本地处理商店数据,并能够在本地商店、网上商店和第三方平台之间实现数据上传下载功能的工具。功能说明如下:1.连接本地商店:您可以使用ShopEx助理连接一个本地安装的商店系统,这样就可以使用助理对本地商店的商品数据进行编辑等操作,并且数据也将存放在本地商店数据库中。默认是选择“本地未安装商店”,本地还未安

ShopEx助理 0
查看详情 ShopEx助理
string connectionString = "Server=localhost;Database=testdb;Uid=root;Pwd=yourpassword;";

执行 CRUD 操作示例

以下是一个简单的类,演示如何使用 MySqlConnectionMySqlCommand 实现基本操作。假设有一张表:

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50),
  email VARCHAR(100)
);
登录后复制
using MySql.Data.MySqlClient; class MySqlCrud { private string _connectionString; public MySqlCrud(string connectionString) { _connectionString = connectionString; } // 插入数据(Create) public void InsertUser(string name, string email) { string query = "INSERT INTO users (name, email) VALUES (@name, @email)"; using var connection = new MySqlConnection(_connectionString); using var cmd = new MySqlCommand(query, connection); cmd.Parameters.AddWithValue("@name", name); cmd.Parameters.AddWithValue("@email", email); connection.Open(); cmd.ExecuteNonQuery(); Console.WriteLine("用户已插入"); } // 查询数据(Read) public void GetAllUsers() { string query = "SELECT id, name, email FROM users"; using var connection = new MySqlConnection(_connectionString); using var cmd = new MySqlCommand(query, connection); connection.Open(); using var reader = cmd.ExecuteReader(); while (reader.Read()) { Console.WriteLine($"ID: {reader["id"]}, 名字: {reader["name"]}, 邮箱: {reader["email"]}"); } } // 更新数据(Update) public void UpdateUser(int id, string name, string email) { string query = "UPDATE users SET name = @name, email = @email WHERE id = @id"; using var connection = new MySqlConnection(_connectionString); using var cmd = new MySqlCommand(query, connection); cmd.Parameters.AddWithValue("@name", name); cmd.Parameters.AddWithValue("@email", email); cmd.Parameters.AddWithValue("@id", id); connection.Open(); int rowsAffected = cmd.ExecuteNonQuery(); Console.WriteLine($"{rowsAffected} 行被更新"); } // 删除数据(Delete) public void DeleteUser(int id) { string query = "DELETE FROM users WHERE id = @id"; using var connection = new MySqlConnection(_connectionString); using var cmd = new MySqlCommand(query, connection); cmd.Parameters.AddWithValue("@id", id); connection.Open(); int rowsAffected = cmd.ExecuteNonQuery(); Console.WriteLine($"{rowsAffected} 行被删除"); } }

调用示例

在 Main 方法中使用上述类:

static void Main(string[] args) { string connStr = "Server=localhost;Database=testdb;Uid=root;Pwd=yourpassword;"; var crud = new MySqlCrud(connStr); crud.InsertUser("张三", "zhangsan@example.com"); crud.GetAllUsers(); crud.UpdateUser(1, "李四", "lisi@example.com"); crud.DeleteUser(1); }

基本上就这些。只要确保 MySQL 服务运行、连接信息正确,并使用参数化查询防止 SQL 注入,就能安全地完成 CRUD 操作。不复杂但容易忽略细节,比如记得调用 Open() 和使用 using 确保资源释放。

以上就是.NET如何连接MySQL数据库并执行CRUD操作的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号