字体
第(3/5)页
关灯
   存书签 书架管理 返回目录
章 数据库开发

    ·351·

    12.6.1 动态链接库的引入和OLE/COM 库的初始化

    利用ADO 技术编写程序,首先要告诉编译器去什么地方找ADO 的库文件,通常这个文

    件在c:\program files\common files\system\ado 下,文件名为msado15.dll。因此,第一步应该

    在文件“stdafx.h”的开头加上如下语句:

    #import "c:\program files\common files\system\ado\msado15.dll" no_ncomspace rencom("EOF", "adoEOF")

    使用no_ncomspace 意味着程序员不需要在初始化变量的时候引用名字空间,最后的cāo作

    表明将EOF 更名为adoEOF,如果不这样做,在程序中很可能会碰到常量冲突。

    将ADO 的动态链接库引入后,在正式用ADO 编写程序前,还需要对OLE/COM 库初始

    化,代码如下:

    CoInitialize( NULL );

    12.6.2 ADO 与数据库的连接

    引入ADO 库并初始化OLE/COM 后,接下来要进行ADO 与数据库的连接。

    ADO 与数据库连接时,有一个最重要的数据类型,即_ConnectionPtr,它实际上就是由

    类模板_com_ptr_t 而得到的一个具体的实例类。_ConnectionPtr 类封装了Connection 对象的

    Idispatch 接口指针,及一些必要的cāo作,通过这个指针便可以cāo纵Connection 对象。通常的

    连接实现方式如下:

    _ConnectionPtr conn;

    conn.CreateInstance(__uuidof(Connection));

    conn->Open(BSTR ConnectionString, BSTR UserID, BSTR Password, long Options);

    各参数意义如下:

    ? ConnectionString:最关键的参数,它表明了要连接的数据源,在本章中采用的是Access

    数据库,它的格式一般为: "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb",

    至于其他数据库,请读者参考相关资料;此外,ConnectionString 还可以是数据源的名

    字。

    ? UserID:用户名,如果ConnectionString 中已经包含,则可以为空。

    ? Password:密码,如果ConnectionString 中已经包含,则可以为空。

    ? Options:表示是以同步方式(adConnectUnspecified)还是以异步方式(adAsyncConnect)

    进行连接,默认为同步。

    具体的,有以下两种实现连接的方式:

    (1)LPCSTR strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb";

    conn->Open(
上一页 目录 下一页