首页 / 软件开发 / C++ / ATL COM和ADO
ATL COM和ADO2011-04-25Amit Dey最近我在NIIT.Bangalore做一个在线银行工程。这个工程几乎是用VB编写,仅有一小部分涉及ATL组件,仅仅能教会我们编写分布式应用程序。我编写的一个中间层组件用到了ATL和ADO来查询后端(SQL Server),部分代码展示在这里。我假设读者懂(至少了解)ATL 的 COM 编程和 VB 的 ADO 编程什么是ADO?ADO是 ActiveX数据对象(ActiveX Data Object)的缩写。ADO使用OLEDB数据支持提供了一个面向对象的访问数据源的接口,它是DAO and RDO 对象模型的集大成者,集合了DAO 和 RDO 的优点。C++编写OLEDB程序很容易。但是,那些没有提供指针和其他C++特性的语言(如Visual Basic)实现OLEDB就很难了。这就是ADO真正露脸的原因。ADO是基于COM接口技术的OLEDB的高级接口,所以,任何支持COM的应用程序都可以实现ADO。ADO的特性允许访问所有的数据类型提供自由线程提供异步查询提供客户端和服务器端指针提供分离的记录集ADO的体系结构在ADO模型中,我们将使用三种主要的对象类型:ConnectionCommandRecordsetConnection 对象用来建立与数据源的连接,首先,数据源名称,所在位置,用户ID,密码等都存储在ConnectionString对象中,用来传递给Connection对象来连接数据源。Command 对象用来执行SQL命令,查询和存储过程当一个查询被执行了,它返回一组由Recordset对象存储的结果集,Recordset中的数据可以被修改并更新到数据库中。