SqlTransaction

SqlTransactionpublicvoidRunSqlTransaction(stringmyConnString){   SqlConnectionmyConnection=newSqlConnection(myConnString);   myConnection.Open();   SqlCommandmyCommand=myConnection.CreateCommand();  

大家好,又见面了,我是你们的朋友全栈君。

public void RunSqlTransaction(string myConnString)
{

    SqlConnection myConnection = new SqlConnection(myConnString);
    myConnection.Open();

    SqlCommand myCommand = myConnection.CreateCommand();
    SqlTransaction myTrans;

    // Start a local transaction
    myTrans = myConnection.BeginTransaction();
    // Must assign both transaction object and connection
    // to Command object for a pending local transaction
    myCommand.Connection = myConnection;
    myCommand.Transaction = myTrans;

    try
    {

      myCommand.CommandText = “Insert into Region (RegionID, RegionDescription) VALUES (100, ‘Description’)”;
      myCommand.ExecuteNonQuery();
      myCommand.CommandText = “Insert into Region (RegionID, RegionDescription) VALUES (101, ‘Description’)”;
      myCommand.ExecuteNonQuery();
      myTrans.Commit();
      Console.WriteLine(“Both records are written to database.”);
    }
    catch(Exception e)
    {

      try
      {

        myTrans.Rollback();
      }
      catch (SqlException ex)
      {

        if (myTrans.Connection != null)
        {

          Console.WriteLine(“An exception of type ” + ex.GetType() +
                            ” was encountered while attempting to roll back the transaction.”);
        }
      }
   
      Console.WriteLine(“An exception of type ” + e.GetType() +
                        ” was encountered while inserting the data.”);
      Console.WriteLine(“Neither record was written to database.”);
    }
    finally
    {

      myConnection.Close();
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132632.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月10日 下午2:46
下一篇 2022年6月10日 下午2:46


相关推荐

  • 零基础快速打造一个属于自己的微信聊天工具

    零基础快速打造一个属于自己的微信聊天工具

    2021年9月18日
    52
  • CCriticalSection类的使用「建议收藏」

    CCriticalSection类的使用「建议收藏」当多个线程访问一个独占性共享资源时,可以使用“临界区”对象。任一时刻只有一个线程可以拥有临界区对象,拥有临界区的线程可以访问被保护起来的资源或代码段,其他希望进入临界区的线程将被挂起等待,直到拥有临界区的线程放弃临界区时为止,这样就保证了不会在同一时刻出现多个线程访问共享资源。      CCriticalSection类的用法非常简单,步骤如下:      定义CCrit

    2022年7月20日
    22
  • SecureCRT中文乱码解决方法(6)

    SecureCRT中文乱码解决方法(6)1、重新查看会话,是否中文显示正常2、依然无法正常显示中文,可能是由于Linux系统中默认的字符编码非UTF8所致用root用户登录。输入cat/etc/sysconfig/i18n如果安装系统为中文系统,则修改【LANG=“zh_CN.UTF-8”】如果安装系统为英文系统,则修改【LANG=“en_US.UTF-8”】保存文件。断开SSH,重新登录。就正常了下面是修改…

    2022年7月17日
    22
  • python traceback 不能完全打印堆栈_traceback

    python traceback 不能完全打印堆栈_tracebacktraceback 打印或检索堆栈回溯 该模块提供了一个标准接口来提取 格式化和打印 Python 程序的堆栈跟踪结果 它完全模仿 Python 解释器在打印堆栈跟踪结果时的行为 当您想要在程序控制下打印堆栈跟踪结果时 例如在 封装 解释器时 这是非常有用的 这个模块使用 traceback 对象 这是存储在 sys last traceback 中的对象类型变量 并作为 sys ex

    2026年3月17日
    2
  • css opacity属性_CSS中的opacity属性[通俗易懂]

    css opacity属性_CSS中的opacity属性[通俗易懂]cssopacity属性CSS|不透明度属性(CSS|opacityProperty)Withthegrowingneedofmakingwebsites,theneedforstylingthemhasalsoincreased.Therefore,CSShasbecomeanindispensablepartofcreating…

    2022年5月26日
    38
  • 无标度网络 matlab,无标度网络及MATLAB建模

    无标度网络 matlab,无标度网络及MATLAB建模无标度网络 1 简介传统的随机网络 如 ER 模型 尽管连接是随机设置的 但大部分节点的连接数目会大致相同 即节点的分布方式遵循钟形的泊松分布 有一个特征性的 平均数 连接数目比平均数高许多或低许多的节点都极少 随着连接数的增大 其概率呈指数式迅速递减 故随机网络亦称指数网络 现实世界的网络大部分都不是随机网络 少数的节点往往拥有大量的连接 而大部分节点却很少 一般而言他们符合 zipf 定律 也就是

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号