C# SqlSugar批量执行SQL语句及批量更新实体对象的操作方法

 更新时间:2024年07月26日 12:09:08   作者:不自由的小码  
SqlSugar 是一款 老牌 .NET开源ORM框架,由果糖大数据科技团队维护和更新 ,开箱即用最易上手的ORM,这篇文章主要介绍了C# SqlSugar批量执行SQL语句以及批量更新实体对象,需要的朋友可以参考下

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

前言

官方文档地址

SqlSugar 是一款 老牌 .NET开源ORM框架,由果糖大数据科技团队维护和更新 ,开箱即用最易上手的ORM

优点 :【生态丰富】【高性能】【超简单】 【功能全面】 【多库兼容】【适合产品】 【SqlSugar视频教程】

支持 : .net framework .net core3.1 .ne5 .net6 .net7 .net8 .net9

特色 : 拥有全球最活跃的ORM线上论坛,比EF还要活跃,交流群人数已超过万人 ,技术支持快,口碑好。

开源 :10年开源信誉值得信赖,从不搞收费,文档也全免费

一、SqlSugar 批量操作SQL语句

实现

public static int ExecuteSqlBatch(List<string> listSql) 
{
    using (var Db = GetInstance())
    {
        Db.Ado.BeginTran();
        try
        {
            foreach (var sql in listSql)
            {
                // 执行每条SQL语句
                var result = Db.Ado.ExecuteCommand(sql);
                if (result == -1)
                {
                    return 0;
                }
            }
            // 提交事务  
            Db.Ado.CommitTran();//.CommitTransaction();
            return 1;
        }
        catch (Exception ex)
        {
            // 发生异常,回滚事务  
            Db.Ado.RollbackTran();
            return 0;
        }
    };
}

二、SqlSugar 批量操作实体对象

实现

public static void BulkInsert(List<SJ_EMR_INFO> entities)
{
    SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
    {
        ConnectionString = ConfigurationManager.ConnectionStrings["MYDB"].ConnectionString,
        DbType = SqlSugar.DbType.SqlServer,//sqlserver、oracle、mysql
        IsAutoCloseConnection = true,
        InitKeyType = InitKeyType.Attribute
    });
    // 批量插入
    var insertObjs = db.Insertable(entities.ToArray());
    //批量更新
    //var updateObjs = db.Updateable(entities.ToArray());
    // 执行
    int count = insertObjs.ExecuteCommand();
}

知行合一

知行合一,是由明朝思想家王守仁(王阳明)提出来的哲学理论,即认识事物的道理与实行其事,是密不可分的。
知是指内心的觉知,对事物的认识,行是指人的实际行为。
知行合一是中国古代哲学中认识论和实践论的命题,主张人的外在行为是受内在意识支配,认为只有由衷向善做到知的人,才有外在自发的善行。
知行合一的重点是理解事物的本质,知与行的合一,既不是以知来合并行,认为知便是行,也不是以行来合并知,认为行便是知,而是内有良知外有良行,知是基础和前提,行是重点和关键。
总的来说,知行合一就是要将知识与行动紧密结合起来,通过实践来不断反思和调整,进而提升自我。

到此这篇关于C# SqlSugar批量执行SQL语句以及批量更新实体对象的文章就介绍到这了,更多相关C# SqlSugar批量执行SQL语句内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于Unity3D实现3D照片墙效果

    基于Unity3D实现3D照片墙效果

    Unity3D不仅仅可以开发游戏,还有非常多的开发方向。本文就将用Unity3D制作出一个3D照片墙的效果,文中的示例代码讲解详细,感兴趣的可以了解一下
    2022-03-03
  • 基于C#实现PDF按页分割文件和分页合并

    基于C#实现PDF按页分割文件和分页合并

    iTextSharp 是一个开源的 PDF 处理库,用于在 C# 程序中创建、编辑和处理 PDF 文件,本文将使用iTextSharp实现C# PDF分割与合并,感兴趣的可以了解下
    2025-03-03
  • 在C#中 webbrowser的使用心得

    在C#中 webbrowser的使用心得

    最近用webbrowser做了个东西,期间有点小曲折,而且网上的解决方法也基本都是浅尝辄止,特此在这里发一下同大家分享。

    2013-04-04
  • c#禁止通过拖动,双击标题栏改变窗体大小的方法

    c#禁止通过拖动,双击标题栏改变窗体大小的方法

    今天小编就为大家分享一篇c#禁止通过拖动,双击标题栏改变窗体大小的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • C#动态执行字符串(动态创建代码)的实例代码

    C#动态执行字符串(动态创建代码)的实例代码

    在编写C#程序的时候,有时我们需要动态生成一些代码并执行。然而C#不像JavaScript有一个Eval函数,可以动态的执行代码。所有这些功能都要我们自己去完成
    2013-03-03
  • 深入了解c# 匿名类型

    深入了解c# 匿名类型

    这篇文章主要介绍了c# 匿名类型的相关资料,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • C#中实现Word文本查找与高亮的多种方法

    C#中实现Word文本查找与高亮的多种方法

    在处理大量Word文档时,你是否曾为查找并高亮特定内容而烦恼?无论是合同关键词的审查、报告中异常数据的标注,还是教学资料的重点突出,手动操作无疑是耗时且易出错的,本文将深入探讨C#中实现Word文本查找与高亮的多种方法,需要的朋友可以参考下
    2026-02-02
  • C#中Timer使用及解决重入问题

    C#中Timer使用及解决重入问题

    本文主要介绍了C#中Timer使用及解决重入问题的相关知识。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • C#基础教程之类class与结构struct的区别

    C#基础教程之类class与结构struct的区别

    struct是值类型,创建一个struct类型的实例被分配在栈上,class是引用类型,创建一个class类型实例被分配在托管堆上,下面这篇文章主要给大家介绍了关于C#基础教程之类class与结构struct区别的相关资料,需要的朋友可以参考下
    2022-11-11
  • C# 使用BitBlt进行窗口抓图的示例

    C# 使用BitBlt进行窗口抓图的示例

    这篇文章主要介绍了C# 使用BitBlt进行窗口抓图的示例,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2021-01-01

最新评论