字体
第(4/5)页
关灯
   存书签 书架管理 返回目录
strConnect, "", "", adConnectUnspecified);

    (2)conn->Open("DSN=DataSourceNcom", "", "", adConnectUnspecified);

    对于本章的例子,要连接的数据库就是在第2 节创建的数据库Info.mdb(数据源也在第

    2 节已经设置好),则连接语句如下:

    _ConnectionPtr m_connection;

    //创建实例

    m_connection.CreateInstance(__uuidof(Connection) );

    枫叶文学网www.fywxw.com

    Visual C++ 6.0 程序设计从入门到精通

    ·352·

    //根据连接字符串开启数据连接

    m_connection->Open( "DSN=Information", "", "", -1);

    12.6.3 获得和遍历记录集

    建立连接后,便可以创建一个ADO 记录集。在得到记录集之前,需要先声明一个

    _RecordsetPtr 型变量,然后创建记录集的实例:

    _Recordset m_Recordset;

    //创建实例

    m_Recordset.CreateInstance(__uuidof(Recordset));

    这里_RecordsetPtr 的来历类似于_ConnectionPtr,也是由类模板_com_ptr_t 而得到的一个

    具体的实例类。

    一般说来,打开记录集有3 种方式。

    1.利用Connection 对象的Execute()方法执行SQL 命令

    Execute()方法的原型如下:

    Execute(_bstr_t CommandText, VARIANT* RecordsAffected, long Options)

    各参数意义如下:

    ? CommandText:命令字串,通常是SQL 语句。

    ? RecordsAffected:cāo作完成后影响的行数。

    ? Options:CommandText 中内容的类型。取值为adCmdText 表明是文本命令;取值为

    adCmdTable 表明是一个表名;取值为adCmdProc 表明是一个存储过程。

    假设m_Connection 和m_Recordset 分别是创建好的连接对象和记录集对象,则利用

    Connection 对象的Execute()方法打开记录集代码如下:

    _variant RecordsAffected;

    m_Connection->Execute(“select * from Contact”, &RecordsAffected, adCmdText);

    2.利用Command 对象执行SQL 命令

    当要执行复杂的命令以及执行带参数的命令时,要使用命令对象对数据源进行cāo作。一

    般的,利用Command 对象打开记录集代码如下:

    _CommandPtr m_Command;

    //创建实例

    m
上一页 目录 下一页