zoukankan      html  css  js  c++  java
  • 解决ExecuteReader requires the command to have a transaction when the connection assigned to the command is in a pending local transaction.

    ExecuteReader requires the command to have a transaction when the connection assigned to the command is in a pending local transaction.

    同一个connection,在update的command上启动了一个transaction,后面一个查询的command,没有设置transaction属性,所以出了这个exception.

    解决方法:

    将update的command加到select的command上去.

     

    SqlConnection conn = new SqlConnection("");
                SqlCommand updateCmd 
    = new SqlCommand("update", conn);
                updateCmd.Transaction 
    = conn.BeginTransaction();
                
    int rows = updateCmd.ExecuteNonQuery();

                SqlCommand selectCmd 
    = new SqlCommand("select ", conn);
                selectCmd.Transaction 
    = updateCmd.Transaction;//important

                SqlDataReader reader 
    = selectCmd.ExecuteReader();
                
    //.
  • 相关阅读:
    array note
    前端开发规范
    java集合分类
    react native环境
    gulp
    关于如何在海量手机号中刷选出想要的手机号
    生成用户头像插件
    下拉加载
    阿里云人脸人体识别调试心得与备忘
    Sublime text3使用时有卡顿现象
  • 原文地址:https://www.cnblogs.com/rockniu/p/1197672.html
Copyright © 2011-2022 走看看