Visual C++下使用ADO的Connection对象及其Record set对象的基本步骤
来源:互联网 发布:小白vip素材下载源码 编辑:程序博客网 时间:2024/05/16 08:01
以下给出一个Visual C++下使用ADO的Connection对象及其Record set对象的基本步骤:
(1) 使用import指令引入ADO2组件
例:#import "C:/ADO/msado15.dll" no_namespace rename("EOF", "EndOfFile")
(2) 定义CADORecordBinding 的派生类,用于程序与数据库表字段的交互,该类的定义可参见icrsint.h。
例:
class CIntlive : public CADORecordBinding
{
public:
DBTIMESTAMP m_datetime; //定义ADO记录集字段变量(与数据库表字段相对应)
long m_key;
long m_value;
long m_quality;
WORD m_stsdatetime; //定义ADO记录集状态变量
WORD m_stskey;
WORD m_stsvalue;
WORD m_stsquality;
BEGIN_ADO_BINDING(CIntlive) //将数据库字段与ADO记录集字段变量绑定
ADO_VARIABLE_LENGTH_ENTRY2(1,adDBTimeStamp,m_datetime,sizeof(m_datetime),m_stsdatetime,true)
ADO_NUMERIC_ENTRY(2,adInteger,m_key,10,0,m_stskey,true)
ADO_NUMERIC_ENTRY(3,adInteger,m_value,10,0,m_stsvalue,true)
ADO_NUMERIC_ENTRY(4,adInteger,m_quality,10,0,m_stsquality,true)
END_ADO_BINDING()
};
(3) 调用CoInitialize初始化COM ::CoInitialize(NULL);
(4) 声明ADO的Connection对象指针和Recordset对象指针并初始化。(类型名在 msado15.dll中已定义)
例:
_ConnectionPtr pConnection1 = NULL;
_RecordsetPtr rstADO1 = NULL;
(5) 定义CADORecordBinding派生类的实例及其Bind接口指针。
例:
CIntlive m_intdata;
IADORecordBinding *rstADOBind1 = NULL;
(6) 产生Connection对象实例和Record set对象实例。
例:
pConnection1.CreateInstance(_uuidof(Connection));
rstADO1.CreateInstance(__uuidof(Recordset)) ;
(7) 连接到数据库并打开Record set对象,其中open函数的参数的使用方法可参见微软MSDN中ADO 相应对象参数的Basic描述。
例:
PConnection1->Open("driver={SQL server};server=servera;uid=sa;pwd=;database=pubs","","",NULL);
rstADO1->Open("data", _variant_t((IDispatch *)pConnection1,true),
adOpenKeyset,adLockBatchOptimistic, adCmdTable);
(8) 将CADORecordBinding派生类的实例联编到Record set对象的Bind接口。
例:
RstADOBind1->BindToRecordset(&m_intdata);
(9) 对Record set对象实例进行操作。操作方法可参见微软MSDN中ADO Record set对象相应方法的Basic描述。
例:
rstADO1->Move Next(); //移动游标到下一条记录
rstADO1->Update(_variant_t("quality"),_variant_t("3"))); //修改记录的quality字段的值为3
rstADO1->Update Batch(adAffectAll)); //将在Record set对象上的所有更新一次送入数据库
(10) 关闭Record set对象并释放Bind接口。
例:
RstADO1->Close();
RstADOBind2->Release();
(11) 关闭连接 pConnection1->Close();
(12) 调用CoUnitialize释放COM资源 ::CoUninitialize();
- Visual C++下使用ADO的Connection对象及其Record set对象的基本步骤
- ADO.NET的Connection对象的使用
- 使用ADO.NET的Connection对象
- 使用ADO.NET的Connection对象
- 使用ADO.NET的Connection对象 .
- 封装ADO编程Connection对象的类
- ADO对象的使用
- 连接对象Connection的使用
- 使用对象的ADO模型
- ADO.NET对象的使用
- 如何在ado中使用connection 对象?
- 如何在ado中使用connection 对象?
- 如何在ado中使用connection 对象?
- ADO基础知识:使用Connection对象连接数据库
- ADO.NET--Connection对象
- ADO Connection 连接对象
- ADO Connection 对象
- ADO基础知识::使用Connection对象执行SQL语言,获取查询的结果
- VS2008开发中Windows Mobile 5.0 emulator连网的配置
- RIP特征
- 平凡的人,做不平凡的事
- Java网络编程-用SSL构建安全的Socket
- 打Jar包的一个Eclipse插件FatJar(很好用)
- Visual C++下使用ADO的Connection对象及其Record set对象的基本步骤
- Linux makefile
- swing讲解
- 《Image Effects 》第一章学习笔记(1)
- Java连接各种数据库方法的介绍
- 暫存
- 用XmlDocument创建XML文档
- usb杂谈
- DataGrid,asp.net样式设置