ado

ADO实际上是是微软以COM技术,封装底层的OLE-DB(也是COM)方便开发人员使用的一另数据储蓄技术。

ADO原生对象:

Connection对象----
adoc:=CreateOleObject('ADODB.Connection');
adoc.openn(连接串)

 

RecordSet对象,使用方法:

ador:= createoleobject('ADODB.RecordSet');

ador.activeConnection:=adoc;

ador.open('select * from sysobjects',adoc,adopenstatic,adlockoptimistlc,adcmdtext);

 

TADOTable:相当于TADODataSet,只是相当于CommandType=CmdTable

Delphi的帮助文档《Managing multiple sessions》中给我明确的建议:

If you create a single application that uses multiple threads to perform database operations, you must create one additional session for each thread.

喔找到了:ADO控件是线程不安全的,所以如果你的程序是使用多线程访问数据库的话你应该确保每个线程都有自己的会话。由于ADO控件的线程不安全性(事实上这种不安全性是来自Micrsoft ADO Library,所以在其它开发工具中也存在同样的问题)因此在使用多线程ADO编程时应该注意一下问题:

第一:要保证每个线程都拥有自己的会话。

第二:作为客户端程序应该尽可能的减少与数据库库服务器的连接数。

第三:在退出线程之前确保释放所有的资源。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值