怎样判断ADOCOnnection是否处在zombie状态?并结束这种状态? 怎样判断ADOCOnnection是否处在zombie状态?并使其不处在这种状态? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主你不如去msdn看看,我没遇见过 CSDN的大侠们都跑到哪里去了? 难道用Delphi真的就这么烂,解决不了这个问题么? 当然不会啊你去看看有关ADO 的书, TADOConnection组件封装了原生 ADO的Connection对象。TADOConnection组件不但封装了Connection对象的方法,属性和事件,同时也提供了组件编辑器让程序员以更方便的方式来设定 ADO的Connection对象的属性。TADOConnection组件提供了和数据源建立连接的功能,因此它是应用程序一定会使用的组件。 属性ConnectionOptions 代表是以同步的方式连接数据源,还是以异步的方式连接数据源。同步 连接是指应用程序和数据源建立连接之后,应用程序才继续执行随后的程 序代码。而异步连接是指应用程序可以立刻执行随后的程序代码而无需等 待连接建立完毕。稍后当连接建立完成之后,ADO会以AfterConnect事件 通知TADOConnection组件 此外,IsolationLevel和Mode这两个属性非常重要,因为它们会影响 ADO应用程序的执行以及可存取的数据。请参考 Delphi的ADO在线帮助说明或是 MSDN中ADO说明文件。一般来说,如果没有特别的原因,你可以接受 TADOConnection组件的内定值。 To: real_name ADOConnection的IsolationLevel,Mode,ConnectionOption等属性我全部都采用的默认属性,为什么会出现zombie这种情况呢?我的代码如下:ADODataSet1,ADODataSet2的LockType属性为ltBatchOptimisticADODataSet1是主表,ADODataSet2是从表 ADOConnection1.BeginTrans; try ADODataSet2.UpdateBatch(arAll); ADODataSet1.UpdateBatch(arAll); ADOConnection1.CommitTrans; except ADOConnection1.RollbackTrans; end; ADODataSet1.Next //执行这句会出现:ITransaction::Commit 或Itransaction::Abort被调用,并且对象处于zombie状态 错误 http://blog.csdn.net/crazycock/archive/2004/10/22/147846.aspx 再顶一下,看样子又要像这个帖子一样,顶不动了.http://community.csdn.net/Expert/topic/3694/3694990.xml?temp=.7178308 原生ADO可调用动态参数。楼主可看一下。且动太参数与数据库有系。 我顶http://community.csdn.net/Expert/topic/3694/3694990.xml?temp=.7178308 看样子又要顶不动了http://community.csdn.net/Expert/topic/3694/3694990.xml?temp=.7178308 请教一下,try finally可以嵌套吗? delphi + crystalreport的开发 如何做一个函数实现乘法分配律 请问.DOC文件用什么控件或方法来处理? 如何使用COM对象来控制EXCEL建立一个新的工作表 rave中组件的用法,有没有这方面的例子。本人急需!在线待。。。。。。。。 Win2000下如何编程实现计算机重新启动或者关机? 关于Visual Foxpro中与时间类型有关的SQL语句写法问题!(高分) delphi的源代码在kylix下能正常编译吗? 那位做过项目需求 利用IP地址连接网络数据库 求详细设计示范 -- 急
你去看看有关ADO 的书,
TADOConnection组件封装了原生 ADO的Connection对象。TADOConnection
组件不但封装了Connection对象的方法,属性和事件,同时也提供了组件编辑器让
程序员以更方便的方式来设定 ADO的Connection对象的属性。TADOConnection组
件提供了和数据源建立连接的功能,因此它是应用程序一定会使用的组件。
属性ConnectionOptions 代表是以同步的方式连接数据源,还是以异步的方式连接数据源。同步
连接是指应用程序和数据源建立连接之后,应用程序才继续执行随后的程
序代码。而异步连接是指应用程序可以立刻执行随后的程序代码而无需等
待连接建立完毕。稍后当连接建立完成之后,ADO会以AfterConnect事件
通知TADOConnection组件
此外,IsolationLevel和Mode这两个属性非常重要,因为它们会影响 ADO应用
程序的执行以及可存取的数据。请参考 Delphi的ADO在线帮助说明或是 MSDN中
ADO说明文件。一般来说,如果没有特别的原因,你可以接受 TADOConnection组
件的内定值。
ADOConnection的IsolationLevel,Mode,ConnectionOption等属性我全部都采用的默认属性,为什么会出现zombie这种情况呢?我的代码如下:
ADODataSet1,ADODataSet2的LockType属性为ltBatchOptimistic
ADODataSet1是主表,ADODataSet2是从表 ADOConnection1.BeginTrans;
try
ADODataSet2.UpdateBatch(arAll);
ADODataSet1.UpdateBatch(arAll);
ADOConnection1.CommitTrans;
except
ADOConnection1.RollbackTrans;
end; ADODataSet1.Next //执行这句会出现:ITransaction::Commit 或Itransaction::Abort被调用,并且对象处于zombie状态 错误
http://community.csdn.net/Expert/topic/3694/3694990.xml?temp=.7178308