首页 > 其他分享 >ADO.NET 事务操作封装

ADO.NET 事务操作封装

时间:2024-06-18 09:22:29浏览次数:25  
标签:事务 Transaction 封装 cmd sql new ADO NET conn

/// <summary>
/// 事务处理
/// </summary>
/// <param name="sqlList">sql语句数组</param>
/// <returns></returns>
/// <exception cref="Exception"></exception>
public static bool OpenTransation(List<string> sqlList)
{
    SqlConnection conn = new SqlConnection(connStr);
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = conn;
    try
    {
        conn.Open(); //打开
        cmd.Transaction = conn.BeginTransaction(); //开启事务
        foreach (var sql in sqlList)
        {
            cmd.CommandText = sql;
            cmd.ExecuteNonQuery();
        }
        cmd.Transaction.Commit(); //执行事务
        return true;
    }
    catch (Exception ex)
    {
        //出现错误,回滚之前执行的操作
        cmd.Transaction.Rollback(); //回滚
        conn.Close(); //关闭
        throw new Exception(ex.Message);
    }
    finally
    {
        cmd.Transaction = null; //初始化
        conn.Close();
    }
}

 

标签:事务,Transaction,封装,cmd,sql,new,ADO,NET,conn
From: https://www.cnblogs.com/tlfe/p/18253671

相关文章

  • 网络调试利器:Chrome Network工具的详细指南
    前言作为测试工程师,熟练使用Chrome开发者工具中的Network工具可以极大地提升我们调试和分析Web应用的能力。Network工具用于监视网络活动,包括HTTP请求、响应、资源加载时间和数据传输量等。本文将详细介绍如何使用这个强大的工具来进行网络分析和调试。打开Network工具打开Ch......
  • 【实用软件】Adobe Acrobat DC 2024最新版安装教程
    下载链接:https://r0vr8xquwul.feishu.cn/docx/PhBBdjSKZoeyFkxhO8Ucv7pEnph详细图文教程:https://www.yuque.com/zhefengerhuanzaigua/bld6x5/synrguy8okom8t97软件介绍AdobeAcrobat是由Adobe公司开发的一款PDF(PortableDocumentFormat,便携式文档格式)编辑软件。借助它,您可......
  • 启动应用程序出现NetProj.exe找不到问题解决
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个NetProj.exe文件(挑选合适的版本文件)把它放......
  • 2毛钱的SOT23-5封装单运放LMV321支持轨到轨输出
    前言:运放比三极管放大电路更简洁、PCB占用空间小,该LMV321单价较低,且支持轨到轨,TI的单价约0.4元,国产有多家半导体厂商有替代产品,追求性价比的可以选择国产LMV321,参考价格约0.2元。在多数场合,该运放可替代三极管放大电路。LMV321SOT23-5封装和丝印RC1F1特性有关升......
  • Asp.net core依赖注入服务生存期踩坑记录
    Asp.netcore依赖注入服务生存期踩坑记录写在开头今天我本想实现组件全局共享数据(状态管理),保存工厂名,用户登录id,设备编码等字段,以便全局共享。但我在a组件设置的值到了b组件就不见了。遇到的问题,与依赖注入服务生存期有关,我们知道依赖注入服务一共有三种:AddScoped:作用域Add......
  • vivado NODE、PACKAGE_PIN
    节点是Xilinx部件上用于路由连接或网络的设备对象。它是一个WIRE集合,跨越多个瓦片,物理和电气连接在一起。节点可以连接到单个SITE_,而是简单地将NETs携带进、携带出或携带穿过站点。节点可以连接到任何数量的PIP,并且也可以由捆绑驱动。相关对象如图2-30第112页所示,NODE对......
  • vivado PIN
    描述引脚是基元或层次单元上的逻辑连接点。引脚允许要抽象掉单元格的内容,并简化逻辑以便于使用。引脚可以是标量的,包含单个连接,或者可以定义为对多个进行分组的总线引脚信号在一起。相关对象引脚连接到一个单元,并且可以通过网络连接到其他单元上的引脚。的引脚单元格还......
  • 大数据Kubernetes(简称K8s):架构、应用与优化
    文章目录大数据Kubernetes(简称K8s):架构、应用与优化一、介绍Kubernetes的历史和演进初始阶段发展阶段演进阶段K8s的核心概念和设计理念核心概念设计理念二、K8s架构深入解析架构、应用与优化主要组件和节点类型1.控制平面(Master节点)2.工作节点(Worker节点)控制平面和......
  • c# .Net 对象池
    对象池就是对象的容器,旨在优化资源的使用,通过在一个容器中池化对象,并根据需要重复使用这些池化对象来满足性能上的需求。当一个对象被激活时,便被从池中取出。当对象被停用时,它又被放回池中,等待下一个请求。对象池一般用于对象的初始化过程代价较大或使用频率较高的场景。在ASP.......
  • 深入解读Netty中的NIO:原理、架构与实现详解
    深入解读Netty中的NIO:原理、架构与实现详解Netty是一个基于Java的异步事件驱动网络应用框架,广泛用于构建高性能、高可扩展性的网络服务器和客户端。Netty的核心是基于JavaNIO(Non-blockingI/O)的,因此理解Netty的实现需要先了解JavaNIO的基本概念和机制。JavaNIO简介Jav......