转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 站长学院 >> Web开发 >> 正文
浅谈ADO.NET文章系列之二 — 并发更新冲突的处理         ★★★★

浅谈ADO.NET文章系列之二 — 并发更新冲突的处理

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1937 更新时间:2009/4/23 10:40:56
                mytransaction = conn.BeginTransaction

                cmd1.Transaction = mytransaction ‘这里假设已经建立了cmd1对象

                cmd1.ExecuteNonQuery()  

 

                mytransaction.Commit() ''''提交事务

 

         Catch ex As Exception

                mytransaction.Rollback() ''''回滚事务

                Return -1 做一些其他处理

         Finally

                conn.Close()

   End Try

 

  说明:对于dataadapter.update方法,如何使用事务呢?其实dataadapter本身并不进行数据更新,而是它的insertcommand,updatecommand,deletecommand。那么就象上面一样设置这三个command对象的Transaction属性就可以了。其他的和上面没有什么不同。

 

5.  既然我们在前面说了采用开放式并发处理,就要对异常进行相应的捕获,给出相应的提示信息和处理办法。对于那些可能引起异常的代码都要包含在

try 

   … 

end try

块之间,这是一个很好的习惯。

一般可以采用类似下面的操作:

Try

            Sqldpr1.Update(ds1.Tables("table1"))

 Catch Ex As Data.DBConcurrencyException ''''并发冲突的异常

     ‘做相应的处理

 End try

说明:这里的做相应的处理,可以是把最新的行从数据库中读出来更新现有的行(当然如果该行被删除例外),也可以重新填充数据(fill操作)。这个时候我们可以作出判断,该行是被删除的情况,可以使用一个函数将Ex.row(“ID”)作为参数传递过去,使用一个command.executeschar方法来判断是否记录存在,使用executereaderfill来取得已经变化的记录或刷新全部记录。这里提到了update()方法引发的异常,如果是立即更新引起的,处理的方式也是一样的。

 

总结:

  由于时间和本人水平的问题,这个问题不能讨论的太深入,请大家原谅。可能里面涉及的范例代码比较少(呵呵,真的很少),读起来可能有些头疼,但我想如果你对数据更新的原理如果比较熟悉应该可以理解其中的意思。最后,还是希望大家能多提意见!有时间一定给出相关的范例代码。

                                

--闵峰

 

 

上一页  [1] [2] 


[C语言系列]NET 中C#的switch语句的语法  [系统软件]托拽Explore中的文件到VB.net的窗口
[系统软件]Boost库在XP+Visual C++.net中的安装  [常用软件]新配色面板:Paint.Net3.0RC1官方下载
[常用软件]用内建的“Net Meeting”聊天  [VB.NET程序]Henry的VB.NET之旅(三)—共享成员
[VB.NET程序]Henry的VB.NET之旅(二)—构造与析构  [VB.NET程序]Henry的VB.NET之旅(一)—失踪的窗体
[VB.NET程序]在托盘上显示Balloon Tooltip(VB.NET)  [VB.NET程序]Henry手记-VB.NET中动态加载Treeview节点(二)
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Web开发  · 网页制作
    · 平面设计  · 网站运营
    · 网站推广  · 搜索优化
    · 建站心得  · 站长故事
    · 互联动态
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台