C#使用SqlSugar操作MySQL数据库实现简单的增删改查

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: C#使用SqlSugar操作MySQL数据库实现简单的增删改查

SqlSugar简介

SqlSugar 是一款 老牌 .NET 开源多库架构ORM框架(EF Core单库架构),由果糖大数据科技团队

维护和更新 ,开箱即用最易上手的.NET ORM框架 。生态圈丰富,目前开源生态仅次于EF Core,但是在需要多库兼容的项目或产品中更加偏爱SqlSugar。

官网:SqlSugar .Net ORM 5.X 官网 、文档、教程 - SqlSugar 5x - .NET果糖网 (donet5.com)

MySQL简介

MySQL 是一个开源的关系型数据库管理系统(RDBMS),它是一种流行的数据库管理系统,广泛用于开发各种类型的应用程序,从小型网站到大型企业级应用,以及嵌入式系统等。

官网:MySQL

基础用法示例

打开NuGet解决方案

所用.NET框架如果是.NET Framework则选择SqlSugar

所用.NET框架如果是.NET Core则选择SqlSugarCore

本示例使用的是.NET 6,因此选择安装SqlSugarCore

为项目安装SqlSugarCore

数据库中Student表的设计如下所示:

id为主键并设置为自增

项目右键——添加——类

新建Student类代码如下所示:

 class Student
    {
        [SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
        public int Id { get; set; }
        public string? Name { get; set; }
        public int Age { get; set; }
        public string? Home { get; set; }
    }

在Id属性上加[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]是因为在数据库中Id是主键并且自增,需要与数据库中一致。

连接到MySQL数据库

  //SqlSugar连接到MySQL数据库
        SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
        {
            DbType = SqlSugar.DbType.MySql,
            ConnectionString = "你的MySQL连接字符串",
            IsAutoCloseConnection = true
        });

为了便于演示,在窗体上添加四个按钮,分别为插入、查询、修改、删除按钮,如下图所示:

插入功能的演示

插入可以插入单条和多条

单条插入示例

  private void button1_Click(object sender, EventArgs e)
 {
            Student student = new Student();
            student.Name = "小明";
            student.Age = 20;
            student.Home = "湖北武汉";
            db.Insertable(student).ExecuteCommand(); 

点击之后,查看数据库,如下图所示:

已成功插入

多条插入示例

  private void button1_Click(object sender, EventArgs e)
 {
            List<Student> students = new List<Student>();
            students.Add(new Student() { Name = "小红", Age = 25, Home = "福建福州"});
            students.Add(new Student() { Name = "小钢", Age = 25, Home = "福建厦门" });
            students.Add(new Student() { Name = "小王", Age = 25, Home = "福建泉州" });
            students.Add(new Student() { Name = "小绿", Age = 25, Home = "江西南昌" });
            students.Add(new Student() { Name = "小吴", Age = 25, Home = "湖北襄阳" });
            db.Insertable(students).ExecuteCommand(); 
  }

点击之后,查看数据库,如下图所示:

成功插入了多条数据

查询功能的演示

查询表中所有数据

 var list = db.Queryable<Student>().ToList();

运行结果如下图所示:

条件查询,以年龄大于20岁为例

db.Queryable<Student>().Where(it => it.Age > 20).ToList();

运行结果如下图所示:

查单条

 var single = db.Queryable<Student>().Single(it => it.Id == 1);

运行结果如下图所示:

查字段,以Name为例

var list3 = db.Queryable<Student>().Select(it => it.Name).ToList();

运行结果如下图所示:

修改功能的演示

以修改id=3的学生的home为“广东珠海”为例

  var single = db.Queryable<Student>().Single(it => it.Id == 3);
            single.Home = "广东珠海";
            db.Updateable(single).ExecuteCommand();

点击之后,查看数据库,如下图所示:

删除功能的演示

条件删除,以删除id=1为例

db.Deleteable<Student>().Where(it => it.Id == 1).ExecuteCommand();


根据主键数组删除,以删除id=2和3为例

db.Deleteable<Student>().In(new int[] {2, 3}).ExecuteCommand();


点击之后,查看数据库,如下图所示:

总结

本文简单介绍了C#使用SqlSugar操作MySQL数据库实现简单的增删改查。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
4月前
|
SQL 关系型数据库 MySQL
mysql 简单的sql语句,入门级增删改查
介绍MySQL中的基本SQL语句,包括数据的增删改查操作,使用示例和简单的数据表进行演示。
mysql 简单的sql语句,入门级增删改查
|
6天前
|
SQL 关系型数据库 API
HarmonyOs开发:关系型数据库封装之增删改查
每个方法都预留了多种调用方式,比如使用callback异步回调或者使用Promise异步回调,亦或者同步执行,大家在使用的过程中,可以根据自身业务需要进行选择性调用,也分别暴露了成功和失败的方法,可以针对性的判断在执行的过程中是否执行成功。
61 13
|
11天前
|
SQL 存储 关系型数据库
MySQL/SqlServer跨服务器增删改查(CRUD)的一种方法
通过上述方法,MySQL和SQL Server均能够实现跨服务器的增删改查操作。MySQL通过联邦存储引擎提供了直接的跨服务器表访问,而SQL Server通过链接服务器和分布式查询实现了灵活的跨服务器数据操作。这些技术为分布式数据库管理提供了强大的支持,能够满足复杂的数据操作需求。
55 12
|
2月前
|
关系型数据库 MySQL Java
Servlet+MySQL增删改查 原文出自[易百教程] 转载请保留原文链接: https://www.yiibai.com/geek/1391
对于任何项目开发,创建,读取,更新和删除(CRUD)记录操作是应用程序的一个最重要部分。
69 20
|
2月前
|
数据库连接 数据库 C#
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(上)
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(上)
|
2月前
|
数据库连接 数据库 C#
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(下)
本文接续前文,深入讲解了在Windows环境下使用C#和ADO.NET操作南大通用GBase 8s数据库的方法。通过Visual Studio 2022创建项目,添加GBase 8s的DLL引用,并提供了详细的C#代码示例,涵盖数据库连接、表的创建与修改、数据的增删查改等操作,旨在帮助开发者提高数据库管理效率。
|
3月前
|
前端开发 Java 数据库连接
javamvc配置,增删改查,文件上传下载。
【10月更文挑战第4天】javamvc配置,增删改查,文件上传下载。
42 1
|
3月前
|
存储 NoSQL API
使用Py2neo进行Neo4j图数据库的增删改查操作
使用Py2neo进行Neo4j图数据库的增删改查操作
130 5
|
3月前
|
数据可视化 API PHP
低代码开发工具-学生管理系统-老师管理增删改查实现
低代码开发工具-学生管理系统-老师管理增删改查实现
49 5
|
3月前
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
76 1