SqlSugar操作笔记

SqlSugar操作笔记

2023年7月13日发(作者:)

SqlSugar操作笔记创建数据表特性1.实体类实例 class Student { ///

///

主键ID ///

[SugarColumn(IsIdentity = true, IsPrimaryKey = true)] public int id { get; set; } public string Name { get; set; } public int Age { get; set; } }ar实⽤类 /// /// SqlSugar实⽤类 ///

使⽤该类时需要在包管理器中

安装:sqlSugarCore ///

学习连接:/Doc/1/1181 ///

class Services class Services { private static Services _instance = null; public static Services GetInstance => _instance ?? (_instance = new Services()); private SqlSugarClient db; public SqlSugarClient Db => db; /// ///

在构造函数中连接数据库 ///

private Services() { //连接本地数据库(服务器名称) string sqlConn = "Data Source=.;"; //数据库名称 sqlConn += "Initial Catalog = TestTable;"; //连接成功后是否保存密码信息",True表⽰保存,False表⽰不保存 sqlConn += "Persist Security Info = True;"; //⽤户名/密码 sqlConn += "User ID = sa;Password = Aa123456;"; //min pool size :连接池最⼩尺⼨,⾸次连接池创建连接数量,max pool size:连接池最⼤尺⼨ sqlConn += "Max Pool Size = 512;"; db = new SqlSugarClient(new ConnectionConfig() { ConnectionString = sqlConn,//连接符字串 DbType = ver,//该项报发⽣冲突错误时,移除命名空间引⼊的冲突对象 IsAutoCloseConnection = true }); } /// ///

⽣成实体类 ///

/// 表名,⽣成实体类的名称 /// 实体类⽣成路径 /// 实体类命名空间 public void MCreateClassFile(string objectNames, string path, string strNameSpace) { //⽣成

当前连接数据库所有数据表

的实体类 ClassFile(path, strNameSpace); //⽣成

数据表名为objectNames参数值的数据表

的实体类 (objectNames).CreateClassFile(path, strNameSpace); //⽣成

数据表名转换为⼩写后

以t开头的数据表

的实体类 (it => r().StartsWith("t")).CreateClassFile(path, strNameSpace); //⽣成

数据表名为objectNames参数值的数据表

的实体类并包含特性 (objectNames).IsCreateAttribute().CreateClassFile(path, strNameSpace); //⽣成

数据表名为objectNames参数值的数据表

的实体类并包含默认值 teDefaultValue().CreateClassFile(path, strNameSpace); } ///

///

创建数据表 ///

public void CreatTable() { //Student

为实体类类名 //创建GUID主键的数据表时,主键类型设置为Guid即可,⽆需添加特性,数据库中id类型表⽰为:uniqueidentifier bles(typeof(Student)); bles(typeof(Student));

} ///

///

向数据表添加数据 ///

public void InsertTable() { Student stu = new Student(); = "张三"; = 20; //1.添加实例对象 able(stu).ExecuteCommand(); //2.添加lst集合 List lst = new List(); (stu); (stu); (stu); (stu); (stu); able(lst).ExecuteCommand(); //3.将2条数据插⼊⼀起执⾏ able(new Student() { Name = "a" }).AddQueue(); able(new Student() { Name = "b" }).AddQueue(); eues(); } /// ///

数据查询 ///

public void SelectTable() { //1.条件查询 List lstStudent = ble().Where(it => != null).ToList(); //2.单表分页查询 int pageIndex = 2;//第pageIndex页 int pageSize = 5;//每页的数据量 int totalCount = 0;//总数据条数 var page = ble().ToDataTablePage(pageIndex, pageSize, ref totalCount); //3.⼆次查询 var getAll = ble() .Select(it => new { NewId = , NewName = , NewAge = }) .MergeTable()//将上⾯的操作变成⼀个表 mergetable .Select(it => new { id = , name = e }).Where(it => % 2 == 0) .ToList();//查询mergetable表⾥⾯的字段 //4.条件拼接查询 +

分页查询 var query = ble().Where(it => % 3 == 0); (it => > 2); (it => == 24 || == 25); var table = TablePage(pageIndex, pageSize, ref totalCount);//分页查询 var table = TablePage(pageIndex, pageSize, ref totalCount);//分页查询 //5.查询结果合并 var q1 = ble().Where(it => > 1000 && < 1005).Select(it => (object)new { }); var q2 = ble().Where(it => > 1015 && < 1020).Select(it => (object)new { }); var dt = (q1, q2).Select().ToDataTable(); //6.去重查询 dt = ble().PartitionBy(it => ).Take(1).ToDataTable(); } ///

///

数据修改 ///

public void UpdateTable() { //1.更新Name和Age,条件为Name为“张张三”并且age为5 var t1 = able() .SetColumns(it => new Student() { Name = "张三", Age = 25 }) .Where(it => == "张张三" && == 5) .ExecuteCommand(); Student student = ble().First(t => == 10);//获取符合条件的第⼀条数据 = 30;//修改查询得到的实例对象的age值 //2.实例对象

根据条件修改 able(student).Where(t => == 10).ExecuteCommand(); //3.

根据主键更新数据 able(student).ExecuteCommand(); } ///

///

删除数据 ///

public void DeleteTable() { //1.删除所有数据 able().ExecuteCommand(); //2.根据条件删除 able().Where(it => % 2 == 0).ExecuteCommand(); } }

发布者:admin,转转请注明出处:http://www.yc00.com/web/1689244753a225557.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信