当前位置: 首页 > news >正文

湖北皇奥建设工程有限公司网站网站怎么创建

湖北皇奥建设工程有限公司网站,网站怎么创建,新开发的app怎么推广,网络营销常用的方法系列文章目录 #x1f380;#x1f380;#x1f380; .NET开源 ORM 框架 SqlSugar 系列 #x1f380;#x1f380;#x1f380; 文章目录 系列文章目录前言 #x1f343;一、实体对象更新1.1 单条与批量1.2 不更新某列1.3 只更新某列1.4 NULL列不更新1.5 无主键/指定列…系列文章目录 .NET开源 ORM 框架 SqlSugar 系列 文章目录 系列文章目录前言 一、实体对象更新1.1 单条与批量1.2 不更新某列1.3 只更新某列1.4 NULL列不更新1.5 无主键/指定列1.6 更新添加条件1.7 大数据更新1.8 重新赋值1list中的值修改1.9 重新赋值2: 列中的值1 二、根据表达式更新像SQL2.1 指定多个字段更新2.2 一个字段更新2.3 字段1更新2.4 Set语法是支持多个的2.5 批量更新IN2.6 表达式无实体更新2.7 表达式分页更新 三、根据字典更新四、根据DataTable更新五、匿名、Object、接口更新六、更多功能6.1 更新主键6.2 联表更新6.3 调用实体内方法6.4 高性能更新6.5 导航更新6.6 默认值系统时间 .NET开源 ORM 框架 SqlSugar 系列 前言 前面的章节介绍了各种 SqlSugar 各种场景的 查询 操作接下来将介绍 SqlSugar 增、删、改 相关操作。数据库 插入 数据的方法包括使用 SQL 插入语句、通过 ORM 框架、使用 批量插入 技术、利用 存储过程。 一、实体对象更新 所谓按实体对象更新就是db.Updateable (参数对象) 有参数的重载。 db.Updateable(实体或者集合).ExecuteCommand()1.1 单条与批量 根据实体更新需要给实体配置主键参考文档实体配置 函数说明ExecuteCommand返回受影响行数 update where 如果没找到那么就会返回 0ExecuteCommandHasChange返回bool ,等同于 bool isChange ExecuteCommand()0 //根据主键更新单条 参数 Class var result db.Updateable(updateObj).ExecuteCommand();//实体有多少列更新多少列//批量更新参数 ListClass var result db.Updateable(updateObjs).ExecuteCommand(); //分页更新 5.1.4.129 低版本 存在 UpateColumns设置无效 db.Updateable(List实体).PageSize(1000).ExecuteCommand() var updateObjnew Class(){Id1 }; //主键要有值 //只更新修改字段 5.1.4.59支持了批量 db.Tracking(updateObj);//创建跟踪 updateObj.Name a1 Guid.NewGuid();//只改修改了name那么只会更新name db.Updateable(updateObj).ExecuteCommand();//因为每条记录的列数不一样批量数据多性能差不建议用 //可以清空 db.ClearTracking();//5.1.4.108-preview30//大数据批量更新 适合列多数据多的更新 db.FastestRealmAuctionDatum().BulkUpdate(GetList());//联表更新看标题6.21.2 不更新某列 不更新 TestId 和 CreateTime var resultdb.Updateable(updateObj).IgnoreColumns(it new { it.CreateTime,it.TestId }).ExecuteCommand()//也可以用特性 [SugarColumn(IsOnlyIgnoreUpdatetrue)] public DateTime UpdateDate{get;set;}1.3 只更新某列 只更新 Name 和 CreateTime var resultdb.Updateable(updateObj).UpdateColumns(it new { it.Name,it.CreateTime }).ExecuteCommand(); 注意5.1.4.62 版本支持了多个 UpdateColumn 叠加之前版本不支持。 追加AOP赋值列 5.1.4.106-preview19 //例如AOP修改 Price那么更新的列就是 Price Name Creatime 加了true就追加了一列 var resultdb.Updateable(updateObj) .UpdateColumns(it new { it.Name,it.CreateTime },true)//true表示追加AOP赋值列 .ExecuteCommand();1.4 NULL列不更新 注意高版本支持批量 用该方法批量性能差些因为列不同所以没必然用批量语法。 //更新忽略null字段 db.Updateable(data).IgnoreColumns(ignoreAllNullColumns:true).ExecuteCommand();//更新忽略null并且忽略默认值 (比如int默认值是0就不更新) db.Updateable(data).IgnoreColumns(ignoreAllNullColumns:true,ignoreAllDefaultValue:true).ExecuteCommand();1.5 无主键/指定列 用法同上唯一区别就是用 WhereColumns 指定条件 var result db.Updateable(updateObj).WhereColumns(itnew { it.Id}).ExecuteCommand();//更新单 条根据ID var result db.Updateable(updateObjs).WhereColumns(itnew { it.Id}).ExecuteCommand();//更新集合根据ID by id可以多列 WhereColumns(itnew { it.Id,it.Name}) //条件列不会被更新只会作为条件1.6 更新添加条件 注意单条操作都支持 批量只支持部分库多库考虑批量操作不建议用这个方法。 db.Updateable(updateObj).Where(itit.Id1).ExecuteCommand() //如果是集合操作请更新到5.0.4版本之前版本禁止使用, 并且只有部分库支持1.7 大数据更新 大数据更新适合大数据更新可以处理百万级, 5.0.4.5 //大数据更新适合大数据更新可以处理百万级 db.FastestRealmAuctionDatum().BulkUpdate(GetList());//特色功能吊打所有框架N倍30列100万8秒更新完1.8 重新赋值1list中的值修改 //单个字段db.Updateable(updateObj).ReSetValue(it { it.Name it.Namea;})//updateObj.Name值的基础上在处理.ExecuteCommand()//多个字段 db.Updateable(updateObj).ReSetValue(it { it.Name it.Namea;it.CreateTime DateTime.Now;}) .ExecuteCommand() 注意该功能是在 UpdateObj 参数上修改如果是在数据库字段1 看1.9和2.3 1.9 重新赋值2: 列中的值1 SET字段固定变量 SqlSugarCore 5.1.4.72 var result67 db.Updateable(updateObjs)//批量更新单独处理num列 set numnum1.PublicSetColumns(it it.Num, it it.Num 1).ExecuteCommand();//该功能默认是更新整个LIST,如果只更新一个字段需要加UpdateColumn指定一下 //2.3也有该功能不过是针对表达式方式更新不是通过实体方式注意该功能默认是更新整个LIST,如果只更新一个字段需要加 UpdateColumn 指定一下。 SET字段集合变量 SqlSugarCore 5.1.4.77 preview02 db.Updateable(list).PublicSetColumns(it it.Price, ) //set pricepricelist[i].price.ExecuteCommand();//MYSQL如果用到float表要设置精度//该功能默认是更新整个LIST,如果只更新一个字段需要加UpdateColumn指定一下注意该功能默认是更新整个LIST,如果只更新一个字段需要加 UpdateColumn 指定一下。 二、根据表达式更新像SQL ️表达式更新比较像SQL而不是对象。 var resultdb.UpdateableStudent().SetColumns(it new Student() { Priceit.Price1,CreateTimeDateTime.Now}) .Where(it it.Id 11).ExecuteCommand(); //是不是很像SQL2.1 指定多个字段更新 更新 name, createtime 条件 id11 var result db.UpdateableStudent() .SetColumns(it new Student() { Namea,CreateTimeDateTime.Now})//类只能在表达示里面不能提取 .Where(it it.Id 11) .ExecuteCommand(); //表达式写2列更新2列其他不会更新2.2 一个字段更新 只更新 name 条件 id1 var result db.UpdateableStudent() .SetColumns(it it.Name jack)//SetColumns是可以叠加的 写2个就2个字段赋值 .Where(it it.Id 1) .ExecuteCommand();// Sql // Update Student set Namejack where id1 //如果需要获取数据库时间我们可以用 SqlFunc.GetDate()注意如果需要获取数据库时间我们可以用 SqlFunc.GetDate() 2.3 字段1更新 //实现在原有字段1 var result db.UpdateableStudent() .SetColumns(it it.Num it.Num1) .Where(it it.Id 1) .ExecuteCommand(); // update Studentset iNumiNum1 where id12.4 Set语法是支持多个的 var result71 db.UpdateableOrder()//生成 [name]name.SetColumns(it it.Name it.Name)//加一个必须更新条件防止SETIF没有列//第一条件为true 生成 createtime变量 .SetColumnsIF(p!null ,it it.CreateTime p.Value)//第一条件为true 生成 X变量 .SetColumnsIF(X!null ,it it.X X).Where(it it.Id 11).ExecuteCommand();2.5 批量更新IN var idsnew int[]{1,2,3}; var result71 db.UpdateableOrder().SetColumns(it it.Name a).Where(it ids.Contains(it.Id)).ExecuteCommand();// in (1,2,3)2.6 表达式无实体更新 db.Updateableobject().AS(Order).SetColumns(name, 1).Where(id1).ExecuteCommand();//SQL://UPDATE [Order] SET// [Name]Const0 WHERE id1//新功能 5.1.4.143 db.Updateableobject()//需要升到5.1.4.143.AS(UserInfo001).SetColumns(itSqlFunc.MappingColumnstring(price),itSqlFunc.MappingColumnstring(price1)).Where(price1).ExecuteCommand();//UPDATE [UserInfo001] SET// [price]price1 WHERE price12.7 表达式分页更新 var qdb.QueryableOrder().Take(10).Skip(10).OrderByDescending(it it.CreateTime) .Select(it it.Id);//只能是Select单个字段db.UpdateableOrder().SetColumns(it new Order(){CreateTime DateTime.Now}).In(it it.Id,q).ExecuteCommand();三、根据字典更新 //设置字典 var dt new Dictionarystring, object();dt.Add(id, 1);dt.Add(name, null);dt.Add(createTime, DateTime.Now); var t66 db.Updateable(dt).AS(student).WhereColumns(id).ExecuteCommand();//字典集合 var dtList new ListDictionarystring, object(); dtList.Add(dt); dtList.Add(dt2); var t666 db.Updateable(dtList).AS(student).WhereColumns(id).ExecuteCommand(); 四、根据DataTable更新 将 datatable 转成字典集合插入 ListDictionarystring,object dc db.Utilities.DataTableToDictionaryList(dataTable);//转成字典 var t666 db.Updateable(dc).AS(student).WhereColumns(id).ExecuteCommand();五、匿名、Object、接口更新 匿名对象https://www.donet5.com/Home/Doc?typeId2423 Object、接口和抽象类: //这个object必须真实类对象比如反射的Object 或者接口接收的类对象 db.UpdateableByObject(object).ExecuteCommand();//更多功能 :动态建类等 https://www.donet5.com/Home/Doc?typeId2562六、更多功能 6.1 更新主键 注意ORM 默认不支持修改主键这种需求有2种方案 删除当前记录然后在添加一条新记录因为主键都可以更新说明没有外部引用可以直接删掉在加 新建一个没有主键的实体指定表名用 Wherecolumns 更新 6.2 联表更新 //多库兼容 var t17 db.UpdateableStudent().SetColumns(it new Student(){ SchoolIdSqlFunc.SubqueryableSchool().Where(ss.Id it.SchoolId).Select(ss.Id), Name newname }).ExecuteCommand();//也可以在Where加条件//.Where(it SqlFunc.SubqueryableSchool().Where(s s.Id it.SchoolId).Any())//优雅写法MySql PgSql SqlServer Oracle 达梦、金仓 //其中Oracle和达梦只支持2表 var t db.UpdateableOrder().InnerJoinCustom((x, y) x.CustomId y.Id).SetColumns((x, y) new Order() { Name y.Name, Price y.Id }).Where((x, y) x.Id 1).ExecuteCommand();生成 sql UPDATE [STudent] SET [SchoolId] (SELECT TOP 1 [Id] FROM [School] WHERE ( [Id] [STudent].[SchoolId] )) , [Name] Const0 WHERE ( [ID] Id1 )6.3 调用实体内方法 db.Insertable(new UnitInsertMethod() { ...... }).CallEntityMethod(itit.Create()).ExecuteCommand();db.Updateable(new UnitInsertMethod() { ..... }).CallEntityMethod(it it.modify(admint)).ExecuteCommand();//实体 public class UnitInsertMethod {[SqlSugar.SugarColumn(IsPrimaryKey true, IsIdentity true)]public int Id { get; set; }public string Name { get; set; }public DateTime Time { get; set; }[SqlSugar.SugarColumn(IsNullable true)]public string UserId { get; set; }public void Create(){this.Time DateTime.Now;this.UserId 1;}public void modify(string a){this.Time DateTime.Now;this.UserId a;} } 6.4 高性能更新 适合超大数据更新 db.FastestRealmAuctionDatum().BulkUpdate(GetList());//更新 吊打所有框架N倍30列100万8秒更新完6.5 导航更新 https://www.donet5.com/Home/Doc?typeId2432 6.6 默认值系统时间 方式1 5.1.3.42-preview01通过特性指定默认值 //更新取数据库当前时间 支持多库//UpdateServerTime true 更新的时候取服务器时间//IsOnlyIgnoreInsert true 插入的时候不插入该列可用可不用根据需求来[SugarColumn(UpdateServerTime true,IsOnlyIgnoreInsert true)]// getdate() now() sysdatepublic DateTime UpdateTime { get; set; }//更新根据SQL进行插入 [SugarColumn(UpdateSql getdate())] //生成 getdate()public DateTime UpdateTime2 { get; set; }[SugarColumn(UpdateSql )] // 生成 public string Str { get; set; }[SugarColumn(UpdateSql 0)]// 生成 0public string Str { get; set; }[SugarColumn(UpdateSql num1)]// 生成 num1public string num { get; set; }注意 表达更新SetColumns(itnew class{ nameit.name},true) 如果用到 SetColumn 需要加个true。实体更新无需任何操作。方式2通过 AOP 实现文档搜索AOP 看标题2。注意方式1和方式2不要冲突了。 .NET开源 ORM 框架 SqlSugar 系列 【开篇】.NET开源 ORM 框架 SqlSugar 系列 【入门必看】.NET开源 ORM 框架 SqlSugar 系列 【实体配置】.NET开源 ORM 框架 SqlSugar 系列 【Db First】.NET开源 ORM 框架 SqlSugar 系列 【Code First】.NET开源 ORM 框架 SqlSugar 系列 【数据事务】.NET开源 ORM 框架 SqlSugar 系列 【连接池】.NET开源 ORM 框架 SqlSugar 系列 【查询目录】.NET开源 ORM 框架 SqlSugar 系列 【查询基础】.NET开源 ORM 框架 SqlSugar 系列 【排序用法】.NET开源 ORM 框架 SqlSugar 系列 【分组去重】.NET开源 ORM 框架 SqlSugar 系列 【联表查询】.NET开源 ORM 框架 SqlSugar 系列 【导航查询】.NET开源 ORM 框架 SqlSugar 系列 【子查询】.NET开源 ORM 框架 SqlSugar 系列 【嵌套查询】.NET开源 ORM 框架 SqlSugar 系列 【配置查询】.NET开源 ORM 框架 SqlSugar 系列 【并集查询】.NET开源 ORM 框架 SqlSugar 系列 【树型查询】.NET开源 ORM 框架 SqlSugar 系列 【表格查询】.NET开源 ORM 框架 SqlSugar 系列 【动态表达式】.NET开源 ORM 框架 SqlSugar 系列 【查询函数】.NET开源ORM框架 SqlSugar 系列 【过滤器】.NET开源 ORM 框架 SqlSugar 系列 【跨库查询、多库查询】.NET开源 ORM 框架 ​【报表查询】.NET开源ORM框架 SqlSugar 系列 【Where语法全解密】.NET开源ORM框架 SqlSugar 系列 【Select 语法全解密】.NET开源ORM框架 SqlSugar 系列 【查询返回结果类型】.NET开源ORM框架 SqlSugar 系列 【insert 插入数据语法合集】.NET开源ORM框架 SqlSugar 系列 【SqlSugar雪花ID常见问题】.NET开源ORM框架 SqlSugar 系列 【update 更新数据语法合集】.NET开源ORM框架 SqlSugar 系列
http://www.w-s-a.com/news/750327/

相关文章:

  • 网站导航栏设计代码织梦做泰文网站
  • 网站建设的定位是什么南通网站定制费用
  • 怎么seo网站推广能免费观看所有电视剧的app
  • 大学网站建设做网站的用什么软件呢
  • 网站建设建设公司哪家好seo网站优化推广
  • 网站服务器组建网站案例上海
  • 盘锦949公社最新招聘优化大师免费版
  • 国外有哪些网站是做弱电的中国国家培训网正规吗
  • 30分钟网站建设教程视频全屋整装120平米的多少钱
  • 生成链接的网站aso优化平台
  • 策划网站建设方案电商扶贫网站建设
  • 网站策划建设方法企业网站建设问题研究
  • 昆明专业网站建设的公司帮别人制作wordpress赚钱吗
  • 高校校园网站建设天水市建设局网站公告
  • 北京网站建设需要花多少钱企业建设网站的目的是
  • 网站模板 免费百度seo优化招聘
  • 过年做那些网站能致富怎样免费建立自己网站
  • 网站去哪里备案长沙网络推广
  • 企业网站规划书vue适合什么样的网站开发
  • 个人网站备案名字网站设计的提案
  • 网站自己做还是找人做常州钟楼区邹区建设局网站
  • 网站文件上传wordpress修改asp做微网站
  • 妇女之家网站建设方案英语不行如何编程做网站
  • 深圳企业网站建设推广服务网站托管一年多少钱
  • wordpress 百度地图api网络seo天津
  • 网站营销咨询顾问餐饮加盟网站建设方案
  • 网站后台管理系统的重要技术指标wordpress下单邮件通知的实现
  • 通化县住房和城乡建设局网站定制网站收费
  • 湖北做网站教程哪家好成都网站建设询q479185700上快
  • 网站的seo方案鹰潭做网站的公司