急求高手相助,大伙都进来给点意见啊,感激不尽!

weixiaoyiyou 2010-08-19 11:29:00
SqlConnection Connection = new SqlConnection("server=.;uid=sa;pwd=1;database=dPnY;");
SqlCommand cmd1 = new SqlCommand();
SqlCommand cmd2 = new SqlCommand();
cmd1.Connection = Connection;
cmd2.Connection = Connection;
Connection.Open();
SqlTransaction sqlTran = Connection.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);
//SqlCommand cmd1 = Connection.CreateCommand();
//SqlCommand cmd2 = Connection.CreateCommand();


try
{
cmd1.CommandText = "insert into tBom (cMemo) Values('a')";
cmd1.Transaction = sqlTran;
cmd1.ExecuteNonQuery();
sqlTran.Commit();
//下面一句故意让其出错,让事务不能提交
int i = Convert.ToInt32("a");

cmd2.CommandText = "insert into tBom (cMemo) Values('b')";
cmd2.Transaction = sqlTran;
cmd2.ExecuteNonQuery();

sqlTran.Commit();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
sqlTran.Rollback();

}
finally
{
Connection.Close();
sqlTran.Dispose();
}
...全文
107 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixiaoyiyou 2010-08-19
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 johndii 的回复:]
不清楚要实现什么功能,哪出问题了?
[/Quote]比如说我有两个操作员都对局域网上的服务器是数据库进行如下操作,上面的代码是每个操作员要执行的代码,实际中SQL语句比上面的要复杂得多,带很多存储过程,所以出问题的可能性很大,我故意让上面的模拟过程在中间卡住,但是我想要其他用户在卡住的事务提交前仍然可以读到数据或者操作数据库,所以就在设置事务为ReadUncommitted,可读脏数据,可是依然不行,就是这个问题了
weixiaoyiyou 2010-08-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 longhair9711 的回复:]
不是很明白 楼主应该把问题讲的更清楚一些
[/Quote]
好的,谢谢,比如说我有两个操作员都对局域网上的服务器是数据库进行如下操作,上面的代码是每个操作员要执行的代码,实际中SQL语句比上面的要复杂得多,带很多存储过程,所以出问题的可能性很大,我故意让上面的模拟过程在中间卡住,但是我想要其他用户在卡住的事务提交前仍然可以读到数据或者操作数据库,所以就在设置事务为ReadUncommitted,可读脏数据,可是依然不行,就是这个问题了
johndii 2010-08-19
  • 打赏
  • 举报
回复
不清楚要实现什么功能,哪出问题了?
longhair9711 2010-08-19
  • 打赏
  • 举报
回复
不是很明白 楼主应该把问题讲的更清楚一些
weixiaoyiyou 2010-08-19
  • 打赏
  • 举报
回复
up 大家帮帮忙啊,第一次发求助帖
qiuxin425 2010-08-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 q107770540 的回复:]
问题是什么?
[/Quote]

+1
weixiaoyiyou 2010-08-19
  • 打赏
  • 举报
回复
问题是,代码肯定没错,我在做一个很大的项目,所以要考虑很多并发性问题,组长说不能用分布式,上面的代码是我写的一段模拟代码,故意让事务卡主不能提交,我在执行上面代码时,在去数据库查询分析器查询,发现表被锁住了,System.Data.IsolationLevel.ReadUncommitted这个我已经让他可以读脏数据了,还是不行,回答好的话可以再加分的。。
q107770540 2010-08-19
  • 打赏
  • 举报
回复
问题是什么?

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧