SqlSugar Core是一个针对.NET和.NET Core的ORM(对象关系映射)框架,它支持多种数据库,并具有高性能和易用性的特点。以下是关于SqlSugar Core的详细介绍:
官网地址:SqlSugar Core 教程
一、概述
SqlSugar Core是一个轻量级、高性能的ORM框架,它可以帮助开发者以面向对象的方式操作数据库,从而简化数据库操作代码,提高开发效率。SqlSugar Core支持多种数据库类型,包括但不限于SqlServer、MySql、PostgreSql、Oracle等。
二、安装与配置
-
安装:
SqlSugar Core可以通过NuGet包管理器进行安装。在项目内NuGet包中搜索SqlSugarCore并安装即可。对于不同的.NET版本(如.NET Core 3、5、6、7、8等),需要安装对应版本的SqlSugarCore包。 -
配置:
安装完成后,需要在项目中配置SqlSugarClient对象,传入ConnectionConfig参数来指定数据库连接字符串和数据库类型。例如:var db = new SqlSugarClient(new ConnectionConfig() { ConnectionString = "server=.;Database=TESTDB;Uid=sa;Pwd=123456;", // 数据库连接字符串 DbType = DbType.SqlServer, // 指定数据库类型 IsAutoCloseConnection = true, // 是否自动关闭连接 InitKeyType = InitKeyType.Attribute // 从实体特性中读取主键自增列信息 });
三、主要功能
-
数据库迁移与映射:
- DbFirst:从数据库中生成实体类,即根据现有的数据库表结构生成对应的C#实体类。
- CodeFirst类:生成根据实体类自动生成数据库表结构,即先定义C#实体类,然后基于这些实体数据库表。
-
CRUD操作:
SqlSugar Core提供了丰富的API来进行数据库的增删改查操作,包括单条数据的插入、更新、删除,以及批量数据的操作。同时,还支持复杂的查询操作,如分页查询、排序、分组聚合等。 -
高级特性:
- 索引支持:可以在实体类上通过特性来定义索引,以优化数据库查询性能。
- 读写分离:支持数据库的主从复制和读写分离,以提高数据库读操作的性能。
- 软删除:支持软删除功能,即在逻辑上删除数据而不是物理删除,方便数据恢复和审计。
四、使用示例
以下是一个简单的使用SqlSugar Core进行数据库操作的示例:
// 插入数据
db.Insertable<Test>(new Test() { Name = "张三", Age = 30 }).ExecuteCommand();
// 查询数据
var list = db.Queryable<Test>().ToList();
// 更新数据
db.Updateable<Test>().SetColumns(it => new Test() { Age = 31 }).Where(it => it.Name == "张三").ExecuteCommand();
// 删除数据
db.Deleteable<Test>().Where(it => it.Name == "张三").ExecuteCommand();
五、总结
SqlSugar Core是一个功能强大、易用性高的ORM框架,它支持多种数据库类型,并提供了丰富的API来进行数据库的增删改查操作。通过SqlSugar Core,开发者可以更加便捷地进行数据库开发,提高开发效率。同时,SqlSugar Core还支持数据库迁移与映射、读写分离、软删除等高级特性,以满足不同的开发需求。