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语句内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#如何自动识别文件的编码

    C#如何自动识别文件的编码

    相信每位程序员在日常学习工作中,文件编码识别是必不可少的,一旦编码错误就会出现让人头疼的乱码,那么下面这篇文章将给大家介绍如何通过C#来自动识别文件的编码。文中给出了详细的示例代码,对大家的理解很有帮助,下面跟着小编一起来学习学习吧。
    2016-12-12
  • c#使用nsoup解析html乱码解决方法分享 nsoup教程

    c#使用nsoup解析html乱码解决方法分享 nsoup教程

    NSoup是JSoup的Net移植版本。使用方法基本一致。如果项目涉及HTML的处理,强烈推荐NSoup。但是遗憾的是NSoup默认的编码是UTF-8,处理中文有乱码,下面给出二种解决方法
    2014-01-01
  • WinForm限制窗体不能移到屏幕外的方法

    WinForm限制窗体不能移到屏幕外的方法

    这篇文章主要介绍了WinForm限制窗体不能移到屏幕外的方法,实例分析了C#中WinForm窗体操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • 详解C#中 Thread,Task,Async/Await,IAsyncResult的那些事儿

    详解C#中 Thread,Task,Async/Await,IAsyncResult的那些事儿

    本文主要介绍了C#中 Thread,Task,Async/Await,IAsyncResult的相关知识。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • c# 实现位图算法(BitMap)

    c# 实现位图算法(BitMap)

    这篇文章主要介绍了c# 如何实现位图算法(BitMap),文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • c# 实现轮询算法实例代码

    c# 实现轮询算法实例代码

    这篇文章主要介绍了c# 实现轮询算法实例代码的相关资料,这里附有实例代码,具有一定的参考价值,需要的朋友可以参考下
    2016-12-12
  • C#模拟实现QQ窗体功能

    C#模拟实现QQ窗体功能

    这篇文章主要为大家详细介绍了如何通过C#实现类似QQ窗体的功能,当窗体放置到屏幕的边缘,可以将窗体隐藏,当鼠标再次放置到屏幕边缘时,窗体可再次显示,需要的可以参考一下
    2022-12-12
  • C#预处理器指令详解与示例

    C#预处理器指令详解与示例

    在软件开发中,我们常常需要编写可移植和可配置的代码,C# 预处理器指令为我们提供了这样的能力,在本篇文章中,我们将详细介绍C#预处理器指令的定义、语法格式、功能以及在实际编程中的应用,需要的朋友可以参考下
    2024-04-04
  • 微信开放平台之网站授权微信登录功能

    微信开放平台之网站授权微信登录功能

    本文通过.net实现的微信开放平台之网站授权微信登录功能,需要的小伙伴一起看看吧
    2015-09-09
  • C#使用Win32 Api实现进程注入到wechat的过程

    C#使用Win32 Api实现进程注入到wechat的过程

    这篇文章主要介绍了C#使用Win32 Api实现进程注入到wechat,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09

最新评论