1. 准备工作

(1) 把下面两局代码写进stdafx.h里。位置是倒数第二行,或者#include <afxdisp.h> // MFC 自动化类 这句的后面。(别的位置没试过) (如果改变了位置,要先清理解决方案,再重新生成解决方案)

#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")
#import "C:\Program Files\Common Files\system\ado\msadox.dll" rename_namespace("ADOX")

(2)把下面一行代码写进XXX.cpp的InitInstance()函数里,位置是return之前。

if (!AfxOleInit())//这就是MFC初始化COM库 {AfxMessageBox(_T("OLE初始化出错!"));}

(3)在XXXDlg.h里添加变量

_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;

2. 新建数据库

参数是文件路径和文件名的字符串,如:

CreateAccess(_T(".\\xx\\xxx.accdb"));

函数功能:如果存在则提示存在,不存在则创建数据库文件。

void CTestAccessDlg::CreateAccess(CString PathAndAccessName)
{if (PathFileExists(PathAndAccessName)){MessageBox(_T("文件已存在"));}else{//MessageBox(_T("文件不存在"));ADOX::_CatalogPtr m_pCatalog = NULL;   _bstr_t ConnectString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source = " + (_bstr_t)PathAndAccessName;//MessageBox(ConnectString);try{m_pCatalog.CreateInstance(__uuidof(ADOX::Catalog));m_pCatalog->Create((_bstr_t)ConnectString);}catch (_com_error *e){AfxMessageBox(e->ErrorMessage());}}
}

3.新建数据表

还可写一个获取字段的函数,此处不写了,只写姓名和年龄两个字段

void CTestAccessDlg::OnInitADOConn();void CTestAccessDlg::CreateAccessTable(CString TableName)
{_variant_t RecordsAffected;try{_bstr_t bstr1 = "CREATE TABLE ";_bstr_t bstr2 = (_bstr_t)TableName;_bstr_t bstr3 = "(姓名 TEXT, 年龄 INTEGER)";_bstr_t CommandText = bstr1 + bstr2 + bstr3;m_pConnection->Execute(CommandText, &RecordsAffected, adCmdText);MessageBox(_T("创建表成功"));}catch (_com_error *e){AfxMessageBox(e->ErrorMessage());}
}void CTestAccessDlg::ExitADOConn();

其中:

void CTestAccessDlg::OnInitADOConn()
{m_pConnection.CreateInstance(__uuidof(Connection));_bstr_t ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source = .\\Test.accdb";try{m_pConnection->Open(ConnectionString, "", "", adModeUnknown);}catch (_com_error *e){AfxMessageBox(e->ErrorMessage());}
}
void CTestAccessDlg::ExitADOConn()
{try{if (m_pConnection->State){m_pConnection->Close();}m_pConnection = NULL;}catch (_com_error e){AfxMessageBox(e.ErrorMessage());}
}

MFC新建Access数据库和表(vs2015+Access2016)相关推荐

  1. access查询mysql_2017计算机二级Access数据库生成表查询教程

    2017计算机二级Access数据库生成表查询教程 引导语;你知道运用Access数据库如何查询生成表吗,以下是百分网小编分享给大家的2017计算机二级Access数据库生成表查询教程,欢迎阅读! 生 ...

  2. C#使用VS 2010在程序加载时创建Access数据库和表

    最近在用C#做一个时间管理系统,需要用到数据库.但由于之前都没有接触过C#,以至于走了很多弯路,所以做完之后顺便在这里记录一下.一来可以使自己养成写文档的习惯,二来也可以帮助到后面学习C#的朋友,可谓 ...

  3. Microsoft Access 数据库和表

    文章目录 创建数据库 创建表 字段 数据类型 字段属性 输入掩码 格式 表与表的关系 创建数据库 数据库为单个文件:DatabaseName.accdb 创建表 设计视图创建表 创建->表设计: ...

  4. access2013数据库实验笔记_实验一 ACCESS数据库及表的操作

    1 .掌握数据库的创建及其它简单操作 2 .熟练掌握数据表建立.数据表维护.数据表的操作 二.实验容与要求 1 .数据库的创建.打开.关闭 2 .数据表的创建:建立表结构.设置字段属性.建立表之间关系 ...

  5. C#操作Access数据库 增删改查

    本文以ADOX操作Access 1.在C#中新建AccessClass.cs文件,内容如下 1 using System;2 using System.Collections.Generic;3 us ...

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

    VC++使用ADO开发ACCESS数据库 ADO和ADOX到底是什么,二者的作用和区别 ADO是Microsoft 最新推出的数据库访问的高层软件接口.它和Microsoft以前的数据库访问接口DAO ...

  7. IIS站点配置和DW CS6连接Access数据库

    1.配置IIS站点 ◆什么是IIS? Internet Information Services(IIS,互联网信息服务),是由微软公司提供的基于运行Microsoft Windows的互联网基本服务 ...

  8. Access数据库——Cookie注入

    目录 1.Cookie注入 什么是Cookie? Cookie注入简介 Cookie和注入有什么关系? Cookie的核心 2.如何设置Cookie? 方法一:依靠浏览器进行设置 方法二:抓包直接修改 ...

  9. .net连接access数据库

    很多时候我们并不需要很多数据库的功能,虽然Sqlserver已经很简单了,但是Access更简单,而且更容易移植,只要你安装了office 下面是使用步骤: 新建Access数据库 在桌面右键-新建M ...

  10. c#.net连接access数据库

    c#.net连接access数据库 前期工作:创建一个access数据库,名为yonghu.mdb ,表明yonghu,字段为user_id,user_pwd PS:如何新建access数据库:左上角 ...

最新文章

  1. SVG.js 笔记 (一)
  2. R语言使用pROC包绘制ROC曲线实战:roc函数计算AUC值、plot.roc函数绘制ROC曲线、添加置信区间、为回归模型中的每个因子绘制ROC曲线并在同一个图中显示出来
  3. Java 7代码层面上的更新
  4. 前端如何转换 schema 和 xml
  5. POJ 1679 判断最小树是否唯一
  6. 常用算法 之一 详解 MD5 实现(基于算法的官方原文档)及源码详细注释
  7. MySQL三大日志及主从复制的原理
  8. Error encountered when performing Introspect schema xxx 错误的解决方法
  9. 如何用耳机翻页_游戏耳机的经典之作—罗技(G)Astro A40体验
  10. 使用它tshark分析pcap的例子以及scapy下载地址
  11. vue 实现简约留言板
  12. win7 安装深度linux系统,深度系统纯净版win7下载安装推荐
  13. 钉钉手机版免密自动登陆SuiteCRM
  14. 群控源码源代码,微群控系统源码的实现原理,核心源码实现 核心框架,可二次开发
  15. 零阶保持模型和一阶保持模型离散的推导
  16. 容联云通讯发送短信java实现
  17. 睿智的目标检测28——YoloV4当中的Mosaic数据增强方法
  18. Photoshop生成320*320像素图片
  19. 搜狗浏览器安装自定义JS脚本的方法~
  20. Wave VR Native SDK学习(一)

热门文章

  1. 常用命令大全(网络命令+关机重启命令)
  2. linux添加变色龙引导,变色龙引导界面屏蔽多余盘符并默认启动Mac _ 黑苹果乐园...
  3. linux计划任务详解(附演示)
  4. gridview的sort_GRIDVIEW排序的动态实现...
  5. 手机拍摄的身份证怎么制作为复印件?
  6. Windows 技巧集
  7. [打印管理器]读取样式列表失败:Invalid variant operation
  8. 如何安装并且运行阿帕奇服务器 for windows
  9. 常微分方程 伍卓群 题目
  10. BlackBerry7290软件安装——电子书阅读Mobipocket