VC++使用ADO开发ACCESS数据库

VC++使用ADO开发ACCESS数据库本文通过实例演示如何在VC++中使用ADO进行ACCESS数据库编程,并对涉及到的几个概念进行详细解释。

本文不对ADO和ACCESS的基本概念进行详细解释,主要包括以下内容:第一部分 ADO和ADOX到底是什么,二者的作用和区别建立数据库第二部分 ADOX创建ACCESS数据库第三部分ADO创建ACCESS数据库的表第四部分使用_ConnectionPtr接口开发ACCESS数据库第五部分使用_RecordsetPtr接口开发ACCESS数据库第一部分ADO和ADOX到底是什么,二者的作用和区别ADO是Microsoft 最新推出的数据库访问的高层软件接口。

它和Microsoft 以前的数据库访问接口DAO、RDO相比具有更大的灵活性,使用也更方便,开发效率大为提高。

ADOX是核心ADO对象的扩展库。

它提供的附加对象可用于创建、修改和删除模式对象,如表和过程。

要使用ADOX,则应建立对ADOX类型库的引用。

ADOX 库文件名为 Msadox.dll。

通俗地讲,ADO是访问数据库的一种接口,可以使用它方便地进行数据库编程。

而ADOX是微软对ADO功能的扩展,比如:可以ADOX创建数据库(而ADO 没有创建数据库的功能)。

第二部分ADOX创建ACCESS数据库用ADOX创建access数据库方法很简单,只需要创建一个Catalog对象,然后调用它的Create方法就可以了。

例程ADOXCreateDatabase演示如何使用ADOX创建一个ACCESS数据库。

打开VC++ 6.0,新建一个基于对话框的工程ADOXCreateDatabase。

在对话框IDD_ADOXCREATEDATABASE_DIALOG中添加一个编辑框IDC_DBNAME和一个按钮IDC_BTN_CREATE,编辑框用以输入数据库名称。

使用ClassWizard给编辑框创建一个CString变量m_dbName。

双击IDC_BTN_CREATE按钮,并编辑OnBtnCreate()函数如下:void CADOXCreateDatabaseDlg::OnBtnCreate(){//使输入到编辑框IDC_DBNAME的内容更新到m_dbName变量中UpdateData(TRUE);CString str;str="d:\\"+m_dbName+".mdb";//检查该数据库是否已经存在,如果该数据库已经存在,弹出消息框,返回//使用API函数PathFileExists()检查路径文件是否存在//请注意:为了使用API函数PathFileExists(),需要加入//#include "Shlwapi.h"//#pragma comment(lib,"shlwapi.lib")if(PathFileExists(str)){CString strTemp;strTemp.Format("%s已存在!",str);AfxMessageBox(strTemp);return ;}//定义ADOX对象指针并初始化为NULL//用ADOX创建access数据库方法很简单,//只需要新建一个Catalog对象,然后调用它的Create方法就可以了。

//Catalog是 ADOX 的一个对象,它包含描述数据源模式目录的集合。

//在这里,您只需知道创建数据库时使用这个对象就可以了。

//注意用try...catch组合捕捉错误_CatalogPtr m_pCatalog = NULL;CString DBName="Provider=Microsoft.JET.OLEDB.4.0;Data source=";DBName=DBName+str;try{m_pCatalog.CreateInstance(__uuidof(Catalog));m_pCatalog->Create(_bstr_t((LPCTSTR)DBName));}catch(_com_error &e){AfxMessageBox(e.ErrorMessage());return ;}}使用ADOX,需要引入ADOX的动态链接库msadox.dll,即在stdafx.h中加入如下语句:#import "C:\Program Files\Common Files\system\ado\msadox.dll" no_namespace rename("EOF","adoEOF")另外,ADOX属于COM对象,所以要在CADOXCreateDatabaseApp::InitInstance()函数中加入:if(!AfxOleInit()){AfxMessageBox("OLE初始化出错!");return FALSE;}初始化COM。

好了,编译并运行该例程,对于编译过程中弹出的4146号警告不要理会。

在编辑框中输入一个数据库名称,点击“创建数据库”按钮,该数据库将在d 盘根目录下创建,再次输入该数据库名称并点击“创建数据库”按钮,将弹出警告对话框。

在vc中使用ADO的时候会得到4146号警告信息,我们可以不去理会,也可以通过#pragma warning指令解决,方法为:将在stdafx.h中加入的语句:#import "C:\Program Files\Common Files\system\ado\msadox.dll" no_namespace rename("EOF","adoEOF")前后再加一条语句,修改后为:#pragma warning (disable:4146)#import "C:\Program Files\Common Files\system\ado\msadox.dll" no_namespace rename("EOF","adoEOF")#pragma warning (default:4146)指令#pragma warning (disable:4146) 暂时屏蔽编译时4146警告信息指令#pragma warning (default:4146) 重置编译器的4146警告到默认状态第三部分 ADO创建ACCESS数据库的表我们一般用ADOX创建数据库,然后再用ADO创建数据库的表。

例程CREATE_DB_AND_TABLE演示如何使用ADO创建ACCESS数据库的表。

打开VC++ 6.0,新建一个基于对话框的工程CREATE_DB_AND_TABLE。

在对话框IDD_CREATE_DB_AND_TABLE_DIALOG中添加如下控件:使用ClassWizard给两个编辑框创建CString变量:双击IDC_BTN_CREATE按钮,并编辑OnBtnCreate()函数如下:void CADOXCreateDatabaseDlg::OnBtnCreate(){UpdateData(TRUE);CString str;str="d:\\"+m_dbName+".mdb";if(PathFileExists(str)){CString strTemp;strTemp.Format("%s已存在!",str);AfxMessageBox(strTemp);return ;}_CatalogPtr m_pCatalog = NULL;CString DBName="Provider=Microsoft.JET.OLEDB.4.0;Data source=";DBName=DBName+str;try{m_pCatalog.CreateInstance(__uuidof(Catalog));m_pCatalog->Create(_bstr_t((LPCTSTR)DBName));}catch(_com_error &e){AfxMessageBox(e.ErrorMessage());return ;}}以上代码例程ADOXCreateDatabase中已经详细叙述。

双击IDC_BTN_CREATE_TABLE按钮,并编辑OnBtnCreateTable()函数如下:void CCREATE_DB_AND_TABLEDlg::OnBtnCreateTable(){//先判断表名编辑框是否为空UpdateData(TRUE);if(!m_tableName.IsEmpty()){ADOX::_CatalogPtr m_pCatalog=NULL;ADOX::_TablePtr m_pTable=NULL;CString str;str="d:\\"+m_dbName+".mdb";CString DBName="Provider=Microsoft.JET.OLEDB.4.0;Data source="; DBName=DBName+str;//这段代码先检查表是否已经存在,如果表已经存在,不再创建,直接返回。

//其实这段代码不必深入研究,只需知道它的功能,直接拿来使用即可try{m_pCatalog.CreateInstance(__uuidof(ADOX::Catalog));m_pCatalog->PutActiveConnection(_bstr_t(DBName));int tableCount=m_pCatalog->Tables->Count;int i=0;while(i<tableCount){m_pTable=(ADOX::_TablePtr)m_pCatalog->Tables->GetItem((long)i);CString tableName=(BSTR)m_pTable->Name;if(tableName==m_tableName){AfxMessageBox("该表已经存在!");return;}i++;}}catch(_com_error &e){AfxMessageBox(e.Description());return;}ADODB::_ConnectionPtr m_pConnection;//创建表_variant_t RecordsAffected;try{m_pConnection.CreateInstance(__uuidof(ADODB::Connection));//Open方法的原型://Open(_bstr_t ConnectionString,_bstr_t UserID,_bstr_t Password,long Options)//ConnectionString为连接字串,UserID是用户名,Password是登陆密码//Options是连接选项,可以是如下几个常量://adModeUnknown 缺省,当前的许可权未设置//adModeRead 只读//adModeWrite 只写//adModeReadWrite 可以读写//adModeShareDenyRead 阻止其它Connection对象以读权限打开连接//adModeShareDenyWrite 阻止其它Connection对象以写权限打开连接//adModeShareExclusive 阻止其它Connection对象打开连接//adModeShareDenyNone 阻止其它程序或对象以任何权限建立连接m_pConnection->Open(_bstr_t(DBName),"","",ADODB::adModeUnknown);}catch(_com_error e){CString errormessage;errormessage.Format("连接数据库失败!\r错误信息:%s",e.ErrorMessage());AfxMessageBox(errormessage);return;}try{CString strCommand;/*执行SQL命令:CREATE TABLE创建表格该表包含三个字段:记录编号INTEGER,姓名TEXT,出生年月DATETIMESQL语言中的create table语句被用来建立新的数据库表格。

合集下载

在VC中使用ADO开发数据库应用程序

在VC中使用ADO开发数据库应用程序

本文由wby272400贡献 ppt1。

在VC中使用ADO开发数据库 VC中使用 中使用ADO开发数据库 应用程序 一、ADO概述 ADO概述 ADO是Microsoft为最新和最强大的数据访问范例OLE DB 而 设计的,是一个便于使用的应用程序接口。

ADO 使您能够编写应 用程序以通过 OLE.DB 提供者访问和操作数据库服务器中的数据。

 ADO 最主要的优点是易于使用、速度快、内存支出少和磁盘遗迹 小。

ADO 在关键的应用方案中使用最少的网络流量,并且在前端 和数据源之间使用最少的层数,所有这些都是为了提供轻量、高性 能的接口。

OLE DB是一组”组件对象模型”(COM) 接口,是新的数据库 低层接口,它封装了ODBC的功能,并以统一的方式访问存储 在不同信息源中的数据。

OLE DB是Microsoft UDA(Universal Data Access)策略的技术基础。

OLE DB 为任何数据源提供了高 性能的访问,这些数据源包括关系和非关系数据库、电子邮件 和文件系统、文本和图形、自定义业务对象等等。

也就是说, OLE DB 并不局限于 ISAM、Jet 甚至关系数据源,它能够处理 任何类型的数据,而不考虑它们的格式和存储方法。

在实际应 用中,这种多样性意味着可以访问驻留在 Excel 电子数据表、 文本文件、电子邮件/目录服务甚至邮件服务器,诸如 Microsoft Exchange 中的数据。

但是,OLE DB 应用程序编程接口的目的是为各种应用程 序提供最佳的功能,它并不符合简单化的要求。

您需要的 API 应该是一座连接应用程序和 OLE DB 的桥梁,这就是 ActiveX Data Objects (ADO)。

VC中使用 中使用ADO 二、在VC中使用ADO 1、引入ADO库文件 、引入 库文件 使用ADO前必须在工程的stdafx.h文件里用直接引入符号 #import引入ADO库文件,以使编译器能正确编译。

vc++中使用ado方式操作access数据库

vc++中使用ado方式操作access数据库

vc++中使用ado方式操作access数据库ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,即使你对OLE DB,COM不了解也能轻松对付ADO,因为它非常简单易用,甚至比你以往所接触的ODBC API、DAO、RDO都要容易使用,并不失灵活性。

本文详细地介绍在Visual C++开发环境下如何使用ADO来进行数据库应用程序开发,并给出示例代码。

为了使读者朋友都能测试本例提供的代码,我们采用Access数据库,您可以直接在我们提供的示例代码中找到这个test.mdb。

程序编译运行后的效果如图一所示图一、ADO操作ACESS数据库的界面效果图一、实现方法万事开头难,任何一种新技术对于初学者来说最重要的还是"入门",掌握其要点。

让我们来看看ADO数据库开发的基本流程吧!它的基本步骤如下:(1)初始化COM库,引入ADO库定义文件(2)用Connection对象连接数据库(3)利用建立好的连接,通过Connection、Command对象执行SQL命令,或利用Recordset对象取得结果记录集进行查询、处理。

(4)使用完毕后关闭连接释放对象。

下面我们将详细介绍上述步骤并给出相关代码。

1、COM库的初始化我们可以使用AfxOleInit()来初始化COM库,这项工作通常在CWinApp::InitInstance()的重载函数中完成,请看如下代码:BOOL CADOTest1App::InitInstance(){AfxOleInit();......}2、用#import指令引入ADO类型库为了引入ADO类型库,需要在项目的stdafx.h文件中加入如下语句:#import "c:program filescommon filessystemadomsado15.dll"no_namespace rename("EOF","adoEOF")这一语句有何作用呢?其最终作用同我们已经十分熟悉的#include类似,编译的时候系统会为我们生成msado15.tlh,ado15.tli两个C++头文件来定义ADO库。

VC中ADO操作Access数据库的实现

VC中ADO操作Access数据库的实现

VC中ADO操作Access数据库的实现
陈祖义;陶忠刚
【期刊名称】《计算机光盘软件与应用》
【年(卷),期】2010(000)010
【摘要】本文简要介绍了在VC6.0中使用ADO操作Access数据库的基本步骤和程序代码的实现,并列举出了关键的实例代码.
【总页数】1页(P150)
【作者】陈祖义;陶忠刚
【作者单位】空军第一航空学院,河南信阳,464000;空军第一航空学院,河南信阳,464000
【正文语种】中文
【中图分类】TP311.56
【相关文献】
1.在VC++中使用ADO方式对ACCESS数据库进行操作 [J], 范晶
2.在VC#.NET中利用实现树视图浏览编辑数据库 [J], 钟卫东
3.在VC中利用ADO技术操作数据库中的BLOB数据 [J], 王井阳;张晓明;秦敏;杨奎河;王晓红
4.在 VB6.0中通过宏操作实现文本文件到Access数据库的导入 [J], 吴恒亮
5.ADO数据库技术及微机线路保护通信规约在上位机开发中的VC++实现 [J], 刘小斌;杨年兴;马军弟;王艳玲;李梦达
因版权原因,仅展示原文概要,查看原文内容请购买。

VC中使用ADO控件的基本功能

VC中使用ADO控件的基本功能

VC中使用ADO控件的基本功能一、开发工具说明:1、编程环境Visual C++ 6.0。

2、数据库Access 2003。

3、该文档仅说明VC++对数据库的修改操作,不包含查询功能。

二、程序基本代码编写过程:1、新建数据库,数据库文件名:DataBaseSS.mdb;表名:TabSS;字段:A、B(A、B的数据类型均为文本)。

2、新建VC++工程,工程名AdoSS。

工程为MFC AppWizard(exe)。

3、应用程序类型为基本对话框。

4、一直下一步到完成。

5、完成后进入窗口设计界面,在此不做设计,仅使用默认设计。

其中“确定”按钮的ID为IDOK。

双击“确定”按钮,在AdoSSDlg.cpp文件中添加“确定”按钮的响应函数void CAdoSSDlg::OnOK(),并删除其中的语句:CDialog::OnOK();6、打开StdAfx.h文件,加人代码:“#import "C:\Program Files\CommonFiles\System\ado\msado15.dll" no_namespace rename("EOF","rsEOF")”。

彩色文字表示要加入的代码,其中橙色为msado15.dll文件的路径及文件名,可视ADO库文件的路径及文件名的不同而自行修改。

7、在AdoSSDlg.cpp文件的顶端,宏定义之后加上加上三句代码:(1)、_ConnectionPtr pCnn;(2)、_bstr_t strConnection;(3)、_bstr_t sqlStr;其中(1)声明了一个_ConnectionPtr类型的智能指针pCnn;(2)声明了一个_bstr_t类型的变量strConnection,用于存放数据库连接字串;(3)声明了一个_bstr_t类型的变量sqlStr,用于存放SQL语句。

8、在AdoSSDlg.cpp文件的BOOL CAdoSSDlg::OnInitDialog()函数中SetIcon(m_hIcon,FALSE);语句之后加入两句代码:(1)、AfxOleInit();(2)、strConnection="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=DataBaseSS.mdb;Persist Security Info=False";其中(1)的作用是初始化COM组件;语句(2)是把数据库连接字串写入变量strConnection 中。

VC+ADO+ACCESS登陆界面实现

VC+ADO+ACCESS登陆界面实现

and
m_ado.ExitConnect(); }
2.12 将数据库文件放置到 VC 程序目录下
{ e.Description(); } return m_pRecordset; }
2.6 插入一个新的对话框资源
ID:IDC_EDIT_UID ID:IDC_EDIT_PWD
ID:IDOK
ID:IDCANCEL
2.7 为登陆对话框新增一个 CLOGIN 类,选中 ResourceView 中的“IDD_LOGIN”->菜单栏 “View->ClassWizard...” ,在弹出的对话框中选择“Create a new Class”,单击“OK” ,在弹出 的对话框输入“CLOGIN”类名
void CAdo::ExitConnect() { if(m_pRecordset != NULL) { m_pRecordset->Close(); } if(m_pConnection != NULL) { m_pConnection->Close(); }
} void CAdo::Execute(_bstr_t strSQL) { try { if(m_pConnection == NULL) { OnInitADO(); } m_pConnection->Execute(strSQL,NULL,adCmdText); } catch(_com_error e) { e.Description(); } } _RecordsetPtr& CAdo::GetRecordset(_bstr_t strSQL) { try { if(m_pConnection == NULL) { OnInitADO(); } m_pRecordset.CreateInstance(__uuidof(Recordset)); m_pRecordset->Open(strSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOpti mistic,adCmdText); } catch(_com_error e)

VC++ ADO连接ACCESS详解

VC++ ADO连接ACCESS详解

int main(){//该程序使用ADO连接ACCESS(装office的时候里面有)数据库后缀为.mdb 运行平台vc6.0//2003平台在写着//---------------------------------------------------------------------------------//ADO数据库连接分五步走,//第一、获取连接(只到数据库在什么地方)//第二、打开连接 open(必要的用户名和密码)//第三、获取字符集 ResultSet(类似数组的数据存储对象),//第四、显示数据//第五、关闭数据集、关闭连接//创建个连接对象_ConnectionPtr m_pConnection;//对连接进行初始化CoInitialize(NULL);//---------------------------------------------------------------------------------//第一步、获取连接//---------------------------------------------------------------------------------//同过连接(Connection)创建并获取一个数据库连接实例,//也可以把他看成句柄(电影门票)有里他就有资格使用数据库里的资源了呵呵m_pConnection.CreateInstance(__uuidof(Connection));// 又于在数据库连接的时候有有可能会出现错误,比如数据源设置或用户名密码错误等//所以使用try{....}catch(){...}捕获try{}里的异常(错误)//并把这些异常放到_com_error e 这个变量里,我们可以同过他获取错误的信息//并且,在出错的时候程序一定回运行catch(){....}里的东西,我们看到如果连接错误的时候//会执行cout<<"数据库连接失败,确认数据库mydb.mdb是否在当前路径下!"<<endl;// return FALSE; 之后推出程序。

Visual C++环境下ADO控件访问access数据库

Visual C++环境下ADO控件访问数据库DBGrid数据表格控件以其短小精悍而深受大家的喜爱,但其如何在Visual C++中使用却很少有文章提及,本文将VC下使用DBGrid的具体步骤简要地介绍给大家。

一.前期准备为了实现DBGrid控件的自动捆绑,我们需要建立一个数据库和与之关联的数据源,本例中我们用Access建立数据库mydata.mdb,在数据库中新建一张表users,包含三个字段username,address,email,并输入多条记录。

在控制面板ODBC数据源中建立名称为test的系统DSN(注意是系统DNS非用户DNS),并将其指向mydata.mdb二.创建工程新建一个基于对话框的MFC AppWizard (exe)工程,取名为GridTest,并在AppWizard的第2步中确认已经提供ActiveX控件支持。

三.插入控件我们需要插入Microsoft RemoteData Control与DBGrid Control两个控件,方法如下:1)选择菜单->Project->Add to Project->Components and Controls Gallery2)在部件选择对话框中进入Registered ActiveX Controls3)选择Microsoft RemoteData Control ,单击Insert按钮,确认后对类进行配置(可以按默认),我们不做任何修改单击OK按钮,插入完成。

以同样的步骤,插入DBGrid Control控件。

4)回到VC工作区,我们在ResourceView中选择GridTest对话框模板(即ID号为IDD_GRIDTEST_DIALOG的对话框模板)此时我们发现在Controls工具条中已经新增了两个按钮,分别表示刚才插入的两个控件。

5)现在我们在模板中画出这两个控件,如图所示:四.更改控件属性鼠标右键单击RemoteData Control控件,在右键菜单中选择Properties,弹出属性对话框,在Control选项卡中选择数据源test,在SQL中输入SQL语句例如:select * from users如下图所示:用同样的方法我们打开DBGrid控件的属性对话框。

在VC++中使用ADO

在VC++中使用ADO访问Access数据库摘要ADO具有易于使用、速度快、内存支出少和磁盘痕迹小的有点。

并且提供了轻量高性能的接口。

ADO(ActiveEx Data Object)是Microsoft数据库应用程序开发接口,是建立在OLE DB之上的高层数据访问技术。

即使我们对OLE DB 和COM不了解,也能轻松使用ADO,因为它非常的简单易用,甚至比以前的ODBC API、DAO都要容易使用,并不适灵活性。

同时它也提供了多语言访问技术包括Visual C++,Visual Basic和VBA等。

使用ADO编程一般有以下几个步骤组成:(1)连接到一个数据源;(2)打开指定的数据集;(3)执行所需的查询;(4)把数据检索到一个能够在C++代码中很容易访问的对象中;(5)提供检测错误的一般方法。

2.ADO对象的详细介绍如下表:使用Command对象查询数据库并返回 Recordset 对象中的记录,以便执行大量操作或处理数据库结构。

可以使用Command对象的集合、方法、属性进行下列操作:∙使用CommandText属性定义命令(例如,SQL 语句)的可执行文本。

∙通过Parameter对象和Parameters集合定义参数化查询或存储过程参数。

∙可使用Execute方法执行命令并在适当的时候返回Recordset对象。

∙执行前应使用CommandType属性指定命令类型以优化性能。

∙使用Prepared属性决定提供者是否在执行前保存准备好(或编译好)的命令版本。

∙使用CommandTimeout属性设置提供者等待命令执行的秒数。

∙通过设置ActiveConnection属性使打开的连接与Command 对象关联。

∙设置Name属性将Command标识为与Connection对象关联的方法。

∙将Command对象传送给Recordset的Source属性以便获取数据。

注意如果不想使用Command对象执行查询,请将查询字符串传送给Connection对象的Execute方法或Recordset对象的Open方法。

使用ADO操作Access数据库

使用ADO操作Access数据库ADO对象1、Access内嵌的VBA是用ADO技术开发数据库应用的主要工具,ADO是目前Microsoft通用的数据访问技术;2、ADO对象模型包括:Connection、Recordset、Record、Command、Parameter、Field、Property、Stream、Error九个对象;3、主要的ADO对象介绍:1)Connection对象:ADO对象模型中的最高级对象,用来实现应用程序与数据源的连接;2)Command对象:主要在VBA中使用SQL语句访问、查询和修改数据库中的数据,实现Recordset对象无法实现的操作(数据表级别的操作),可以使用DoCmd代替;3)Recordset对象:ADO最为常用的、重要的对象,可以访问表和查询对象,返回的记录储存在Recorderset对象中,主要执行的操作:①查询数据表中的数据;②在数据表中添加数据;③更新数据表中的数据;④删除数据表中的特定数据;在Access中引用ADO对象1、Access引用ADO的步骤:①声明、初始化Connection对象;②创建Recordset对象,编程完成各种操作;③关闭ADO对象;2、声明、初始化Connection对象'声明Connection对象:一般使用cn做为变量的命名前缀;Dim coName As ADODB.Connection'初始化Connection对象,连接当前数据库;Set cnName = CurrentProject.Connection3、声明和打开Recordset对象1)声明、初始化Recordset对象Dim rsName As ADODB.Recoresetset rsName = new ADODB.Recordset2)打开一个Recordset对象使用Recordset的Open方法可以打开数据表、查询对象、或直接引用SQL查询语句4、关闭Recordset和Connection对象rsName.ClosecnName.CloseSet rsName = NothingSet cnName = Nothing通过Recordset对象引用记录字段1、引用字段的方法有2种:直接在记录集对象中引用字段名称;使用记录集对象的Fields(n)属性引用;Code = rsName!字段名'引用该字段的第一条记录Code = rsName.Field(n)'引用该字段的第n条记录,n从0开始,可以用循环输出需要量的记录2、如果记录集字段包含空格、或者是一个保留字,则引用时必须将该字段用[ ]括起来;通过Recordset对象浏览记录1.Recordset记录集对象提供了4种方法浏览记录2、BOF、EOF属性分别记录指针是否在文件开始、文件末尾;如果记录集指针指向某记录时,BOF和EOF都为false;'添加一个窗体部件的按钮事件:浏览下一条记录Priavte Sub ComomndNext_Click()rsDemo.MoveNextIf rsDemo。

#VC++中链接数据库并实现(添加修改删除清空)功能

VC++中用ADO编程方法链接数据库并实现添加、修改、删除、清空等功能1、数据库为Microsoft Office Access 2003为例2、数据库名为DataBase.mdb,表名employees,添加编号、学号、姓名字段,类型为文本。

数据库放在p5根目录下。

3、建立新建项目MFCAppWizard[exe]名称为p5。

选择基本对话框。

然后添加控件,一个列表控件,三个编辑框,五个按钮。

如下在列表控件,右键属性。

设置如下:然后建立类向导,在MemberVariables视图中为3个编辑框和1个列表控件添加变量名称和类型如图:五个按钮的ID和名字改为:IDC_BUTADD,添加;IDC_BUTMOD,修改;IDC_BUTDEL,删除;IDC_BUTCLICK,清空;IDC_BUTTON1,退出。

4、为项目加类ADO类,在ClassView中视图中在p5classes上面点右键新建类,类的类型选GenericClass,名称为ADO,点确定。

同时在StdAfx.h头文件中加入ADO动态链接库,代码如下:#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace\rename("EOF","adoEOF">rename("BOF","adoBOF">//导入ADO动态链接库在ClassView视图中的CP5Dlg中加入自定义函数AddToGrid和OnButclear。

这两个函数是手动添加的。

5、在ADO.app中程序为// ADO.cpp: implementation of the ADO class.////////////////////////////////////////////////////////////////////////#include "stdafx.h"#include "p5.h"#include "ADO.h"#ifdef _DEBUG#undef THIS_FILEstatic char THIS_FILE[]=__FILE__。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档