标题:关于Transaction事务的未赋值问题
只看楼主
niaomingjian
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-8-9
 问题点数:0 回复次数:4 
关于Transaction事务的未赋值问题
                    try
                    {
                        conn.Open();
                        trans = conn.BeginTransaction();
                        cmd.Transaction = trans;  //命令的Transaction属性初始化
                        int i=cmd.ExecuteNonQuery();
                         = "update [table] set accountamount=accountamount+100 where accountid='B'";
                        cmd.ExecuteNonQuery();
                        ();
                    }
                    catch (SqlException ex)
                    {
                        trans.Rollback();//显示错误,trans未赋值,是什么原因啊???
                       throw ex;
                    }
                    finally
                    {
                        conn.Close();
                    }

[ 本帖最后由 niaomingjian 于 2012-2-1 15:13 编辑 ]
搜索更多相关主题的帖子: update where 
2012-01-30 23:49
xydddaxia
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:33
帖 子:466
专家分:2307
注 册:2009-3-20
得分:0 
trans申请在try的外面

站在春哥的肩膀上
2012-01-31 08:59
niaomingjian
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-8-9
得分:0 
回复 2楼 xydddaxia
谢谢!这样就可以了
conn.Open();
trans = conn.BeginTransaction();  
try
{
  cmd.Transaction = trans;
  ......

为什么这样做就可以啊,可以解释一下吗?谢谢
2012-01-31 13:56
BigPei
Rank: 3Rank: 3
来 自:苏州
等 级:论坛游侠
威 望:6
帖 子:43
专家分:161
注 册:2012-1-10
得分:0 
在try块中申明或者赋值的变量,其作用域只在try块中。当程序遇到异常时,此时定义的变量已经失效。

Fighting forever.
2012-01-31 15:08
niaomingjian
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-8-9
得分:0 
回复 4楼 BigPei
原来这样啊,与作用域有关系啊,谢谢!
2012-02-01 15:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-360160-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028614 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved