赞
踩
(VS2013+Access2003)
1. 新建一个基于对话框的MFC项目:ADO_Access0306
在stdafx.h头文件末尾添加(网上有说在某个#include后面的添加的,也有说在合适位置添加的,我这里直接添加在最末尾)
win32位系统添加:
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")
win64位系统添加:
#import "C:\Program Files (x86)\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")
添加完成后#import下面会出现红色波浪线提示错误,不用理会,过会儿会消失。
2. 在ADO_Access0306Dlg.h类里的public下添加 :
_ConnectionPtr m_pConnection; //连接access数据库的链接对象
_RecordsetPtr m_pRecordset; //结果集对象
_CommandPtr m_pCommand;
3. 初始化数据库连接:
在ADO_Access0306Dlg.cpp文件的OnInitDialog()初始化成员函数里添加如下代码:
try
{
CoInitialize(NULL);
m_pConnection = _ConnectionPtr(__uuidof(Connection));
m_pConnection->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;\
Data Source=bPR2011DB.mdb;Persist Security Info=False;Jet OLEDB:Database Password=ssbio123", "", "", adModeUnknown;//这里照着老版的书上写Provider=Microsoft.Jet.OLEDB.4.0;Data
m_pConnection->Open("", "", "", adConnectUnspecified);
AfxMessageBox(_T("数据库连接成功!"));
}
catch (_com_error e)
{
AfxMessageBox(_T("数据库连接失败!"));
return FALSE;
}
注:对应路径下必须有bPR2011DB.mdb文档。
编译运行后显示:
5. 添加按钮:
(1)连接数据库成功后,我们新建按钮实现创建新表student,对应BUTTON1为响应按钮 :
双击BUTTON1 按钮,添加事件处理程序:
_variant_t RecordsAffected; try { CString TableName; TableName = "student"; _bstr_t bstr1 = "CREATE TABLE "; _bstr_t bstr2 = (_bstr_t)TableName; _bstr_t bstr3 = "(id text, sex text, age INTEGER)"; _bstr_t CommandText = bstr1 + bstr2 + bstr3; m_pConnection->Execute(CommandText, &RecordsAffected, adCmdText); MessageBox(_T("创建表成功")); } catch (_com_error *e) { AfxMessageBox(e->ErrorMessage()); }
点击按钮BUTTON1 ,响应以上程序,弹出“数据库连接成功!”,点击确定 -> 按钮BUTTON1 -> 弹出“创建表成功”
(2)新建按钮实现插入功能,对应BUTTON1 事件处理程序如下:
_variant_t RecordsAffected;
CString AddSql;
AddSql.Format(_T("INSERT INTO student(id,sex,age) VALUES('10','17',1)"));
try{
m_pConnection->Execute((_bstr_t)AddSql, &RecordsAffected, adCmdText);
// m_pConnection->Execute((_bstr_t)AddSql, 0, adCmdText);上一行和本行效果一样
AfxMessageBox(_T("添加用户成功!"));
}
catch (_com_error e){
MessageBox(e.Description());
}
通过查看数据库连接可以看到表格数据:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。