知识宝典ADO.NET _CommandPtr接口

开发 后端
这里就ADO.NET _CommandPtr接口、 _RecordsetPtr、 _CommandPtr接口三个详细分析,本文最主要就ADO.NET _CommandPtr接口做出代码演示。

大家都喜欢用ADO.NET访问数据库,本人收集了大量的资料,现在就分享给大家,ADO库包含三个基本接口:_ConnectionPtr接口、_CommandPtr接口和_RecordsetPtr接口。ADO.NET _CommandPtr接口返回一个记录集或一个空指针。通常使用它来创建一个数据连接或执行一条不返回任何结果的SQL语句,如一个存储过程。使用_ConnectionPtr接口返回一个记录集不是一个好的使用方法。对于要返回记录的操作通常用_RecordserPtr来实现。而用 _ConnectionPtr操作时要想得到记录条数得遍历所有记录,而用_RecordserPtr时不需要。

#T#ADO.NET _CommandPtr接口返回一个记录集。它提供了一种简单的方法来执行返回记录集的存储过程和SQL语句。在使用_CommandPtr接口时,你可以利用全局_ConnectionPtr接口,也可以在_CommandPtr接口里直接使用连接串。如果你只执行一次或几次数据访问操作,后者是比较好的选择。但如果你要频繁访问数据库,并要返回很多记录集,那么,你应该使用全局_ConnectionPtr接口创建一个数据连接,然后使用 _CommandPtr接口执行存储过程和SQL语句。

ADO.NET _RecordsetPtr是一个记录集对象。与以上两种对象相比,它对记录集提供了更多的控制功能,如记录锁定,游标控制等。同_CommandPtr 接口一样,它不一定要使用一个已经创建的数据连接,可以用一个连接串代替连接指针赋给_RecordsetPtr的connection成员变量,让它自己创建数据连接。如果你要使用多个记录集,***的方法是同Command对象一样使用已经创建了数据连接的全局_ConnectionPtr接口,然后使用_RecordsetPtr执行存储过程和SQL语句。 

使用ADO.NET _CommandPtr接口,_CommandPtr接口返回一个Recordset对象,并且提供了更多的记录集控制功能,以下代码示例了使用ADO.NET _CommandPtr接口的方法:

  1. _CommandPtr pCommand;  
  2. _RecordsetPtr pRs;  
  3. pCommand.CreateInstance(__uuidof(Command));  
  4. pCommand->ActiveConnection=pConn;  
  5. pCommand->CommandText="select * from student";  
  6. pCommand->CommandType=adCmdText;  
  7. pCommand->Parameters->Refresh();  
  8. pRs=pCommand->Execute(NULL,NULL,adCmdUnknown);  
  9. _variant_t varValue = pRs->GetCollect("name");  
  10. Cstring strValue=(char*)_bstr_t(varValue); 

 关于数据类型转换由于COM对象是跨平台的,它使用了一种通用的方法来处理各种类型的数据,因此Cstring 类和COM对象是不兼容的,我们需要一组API来转换COM对象和C++类型的数据。_vatiant_t和_bstr_t就是这样两种对象。它们提供了通用的方法转换COM对象和C++类型的数据

责任编辑:田树 来源: 博客
相关推荐

2009-11-04 15:11:42

ADO.NET连接模式

2009-10-29 08:51:24

ADO.NET结构

2009-11-12 15:47:14

ADO.NET更新数据

2009-11-13 10:31:07

ADO.NET Dat

2009-07-06 10:43:51

ADO.NET

2009-11-04 09:18:12

ADO.NET _Re

2009-11-04 09:52:10

ADO.NET Sql

2009-11-12 15:38:18

ADO.NET数据平台

2009-11-04 09:02:34

ADO.NET _C

2009-12-28 15:11:36

ADO.NET专家

2009-11-04 09:34:47

ADO.NET Sql

2009-11-03 16:37:10

2009-12-29 14:09:17

ADO.NET通用接口

2009-10-26 15:44:52

2009-09-14 13:37:25

LINQ ADO.NE

2009-11-05 16:27:51

WCF数据契约

2009-11-20 10:43:04

思科无线AP

2011-05-20 11:31:07

ADO.NET

2010-01-04 10:48:30

ADO.NET特色

2009-12-02 15:44:36

点赞
收藏

51CTO技术栈公众号