在使用 C# 结合 SqlSugar 更新数据库中的数据时,可以通过几种不同的方法来实现。下面将介绍如何使用 SqlSugar 更新数据的一种常见方式,包括单条更新,批量更新。
根据实体对象更新
C#var user = new wms_user
{
id = 1586977355308601346,
name = "李四2",
dept = "IT2",
duty = "程序员2",
hire_date = DateTime.Parse("2022-11-1"),
term_date = null
};
var ret= Db.Updateable(user).ExecuteCommand();
SqlSugar 是一个简单而强大的.NET ORM(对象关系映射)框架,它支持多种数据库,包括 SQL Server、MySQL、SQLite、PostgreSQL 等。使用 SqlSugar,你可以非常轻松地进行数据库操作,比如新增、查询、更新和删除数据等。
从单条插入,批量插入,字典插入,或是DataTable插入,也可以匿名插入。
| 方法名 | 描述 |
|---|---|
| ExecuteCommand | 注意:批量插入用该方法性能最好 返回数据库受影响的行数,例如查询返回0,更新0条返回0,更新1条返回1 |
| 新功能 (5.1.2.4 prview01 ) ExecuteReturnPkList(); 用例: ExecuteReturnPkList(); ExecuteReturnPkList(); ExecuteReturnPkList(); | 批量返回主键 1、支持 批量返回自增 ,SqlServer和PgSql性能比较好(其它库性能差些) 2、支持返回雪花ID (等同于ExecuteReturnSnowflakeIdList) 3、支持返回GUID 不支持用触发器的主键 |
| ExecuteReturnIdentity | 返回单个自增列 (int) |
| ExecuteReturnBigIdentity | 返回单个自增列 (long) |
| ExecuteReturnEntity | 返回实体(如果有自增会返回到实里面,不支批量自增,不支持默认值) |
| ExecuteCommandIdentityIntoEntity | 给传入实体添加自增列 (不支持批量) |
| ExecuteReturnSnowflakeId | 返回雪花ID 5.0.3.5支持 |
| ExecuteReturnSnowflakeIdList | 返回雪花ID集合 5.0.3.5支持 |
使用SqlSugar进行数据库操作是相当直观和灵活的。下面是一些常见数据库查询操作的示例,包括查询单条记录、主键查询、查询所有记录、模糊查询、排序、TOP查询、计数(Count)、IN查询、分页查询、分组查询、去重复、以及排序操作。
我们先继承DbContext,做一个服务类,我们可以将所有数据库操作封装到这里面
C#public class inventoryService:DbContext
{
}
设计一个界面

ORM全称Object Relational Mapping,即对象关系映射,是在ado.net之上又进行了一层封装,对于数据的操作,我们无需再去编写原生sql,取代代之的是基于面向对象的思想去编写类、对象、调用相应的方法等,ORM会将其转换/映射成原生SQL然后交给ado.net执行。
实体类
C#[SugarTable("dbstudent")]//当和数据库名称不一样可以设置别名
public class Student
{
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]//通过特性设置主键和自增列
public int Id { get; set; }
public int? SchoolId { get; set; }
[SugarColumn(ColumnName ="StudentName")]//数据库列名取自定义
public string Name { get; set; }
}
SqlSugar 是一款功能强大的.NET 开源 ORM 框架。SqlSugar 具有开箱即用的特点,能够让用户快速地搭建自己的 ORM 项目。在过去的几年里,SqlSugar 一直在不断地更新和完善,目前已经成为了一款广受欢迎的开源框架。
SqlSugar 提供了强大的 SQL 数据库访问能力,用户可以使用简单的 API 实现对数据库的增删改查等操作。SqlSugar 还提供了一系列的高级功能,如延迟加载、缓存、连接池、事务等,能够让用户轻松地实现复杂的业务逻辑。
SqlSugar 的代码设计非常简洁清晰,注重代码的可读性和可维护性。框架采用了松散耦合的设计模式,使得不同的组件之间可以相对独立地进行开发和测试。此外,SqlSugar 还支持多种数据库类型,包括 MySQL、Oracle、SQL Server、PostgreSQL 等,能够满足不同用户的需求。
一句话SqlSugar 比EF更适合中国人!!!