[Delphi]Delphi中的ODBC和ADO

本文探讨了Delphi中ADO与ODBC两种数据库访问技术的区别与联系。重点介绍了两者在不同数据库上的适用性及性能表现,尤其强调了TADOQuery在SQL更新操作上的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
Delphi中的ODBCADO
ADO ODBC都用来实现数据库的访问,都是对底层数据驱动的封装,在编程时都可以满足对数据库的访问。在Delphi中也提供了BDEADO组件封装,前期做项目的时候数据库采用的AccessSQLServer,没有考虑就用的ADO,后来的项目中用到了MySQL,而没有ADO直接访问MySQL的驱动,又觉得采用ODBC是最好的,因为所有的数据库都提供ODBC驱动。后来才发现ADO也可以直接使用ODBC的驱动,简直是太Faint了。
据了解,ADO的速度和支持程度要比ODBC的好,看来以后所有的数据库访问都可以大胆放心的使用ADO了,大不了改一下连接串就可以支持ODBC了。
 
       但在DelphiBDEADO控件还有很多的不同,感触最深的就是两个控件中Query的更新操作了。BEDTQuery大部分情况只能返回只读的记录集而不能修改,除非你设置TQueryRequestLive属性,并且在结果数据集中只包含一个表,注意不能是多个表的查询。而TADOQuery就没有此限制,随便写SQL语句然后直接更新字段的值,最后Post就可以了。当然对于TQuery返回的不能修改的记录集也可以采用一种方法弥补,那就是用TUpdateSQL配合,可以设置TQueryUpdateObject属性为一个TUpdateSQL,设置TUpdateSQL的更新语句就可以了。
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值