标题:VC中用Ado接口代码连接和使用与数据库
一、阅读本文所需注意的其它事项:
1、进行方法调用时,所传递的参数的类型的转换(可能存在比本文更简便的处理方法但我未发现)
2、每个源文件的每行注释说明了其文件名
3、请关注相关头文件包含关系
4、请关注文中所有中文注释
5、更多的内容请参阅 "VC安装目录\Include\adoint.h"和"VC安装目录\Include\adoid.h"文件,adoint即ActiveX Data Object InterFace
二、下面的源文件与您的数据库应用程序不直接相关,但其目标代码(生成的.obj文件)是您必需的,请参考
//Ado.cpp文件///////////////////////////////////////////
#include <objbase.h>
#include <Initguid.h>
#include <adoid.h>
该文件使用方法:新建一个空的MFC工程,将此文件添加到该工程中,编译生成Ado.obj文件,再将此.obj文件添加到您的数据库应用程序.该源文件在您的数据库应用程序中是不需要的----作者
三、下面是与您的数据库应用程序源文件相关代码(非所有代码)
//1、ado.h文件////////////////////////////////////////
#ifndef __ADO__H__LZG
#define __ADO__H__LZG
#include <adoid.h>
#include <adoint.h>
#include <icrsint.h>
#endif
//2、stdafx.h文件////////////////////////////////////////
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afxdisp.h> // MFC Automation classes
#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
#include "ado.h" //请注意这里
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h>
//3、数据库应用程序.h文件/////////////////////////////////////////////////////////////////////
//以下为用到的若干相关数据库引用变量(声明在其头文件中)
ADOField* pfd;
ADOFields* pfds;
CString m_dbfile;
ADORecordset* prs;
ADOConnection* pdb;
//4、数据库应用程序.cpp文件/////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "数据库应用程序.h"
//这里添加其它相关头文件
//以下为该.cpp文件中若干自定义或非自定义的方法,与数据库连接相关
//其中每一条语句都有含义,请关注其中的注释
BOOL CBKDlg::InitDataEnv()
{
//下面定义了一个简单的连接字符串,当然还有更复杂的
CString s=_T("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=d:\\data\\资料借阅管理.mdb");
::CoInitialize (NULL);//初始化COM环境
CoCreateInstance(CLSID_CADOConnection,
NULL,
CLSCTX_INPROC_SERVER,
IID_IADOConnection15,
(LPVOID*)&pdb
);//初始化一个ADO连接
CoCreateInstance(CLSID_CADORecordset,
NULL,
CLSCTX_INPROC_SERVER,
IID_IADORecordset,
(LPVOID*)&prs
);//初始化一个ADO数据集
CoCreateInstance(CLSID_CADOField,
NULL,
CLSCTX_INPROC_SERVER,
IID_IADOFields,
(LPVOID*)&pfds
);//初始化一个ADO数据域集合(域即是Fox中的字段,下同)
CoCreateInstance (CLSID_CADOField,
[1] [2] 下一页 没有相关教程
|