原创文章,转载请注明原文:MFC通过ODBC连接mysql(使用VS2012编写MFC) By Lucio.Yang

1.ODBC连接mysql

首先ODBC是什么呢?

开放数据库互连(Open Database Connectivity,ODBC)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。

可以通过如下路径找到ODBC:控制面板->管理工具->数据源(ODBC)

  1.1 安装mysql-odbc driver

    这个driver将mysql数据库与ODBC连接在一起。可以在mysql官网下载,但是需要注册。尤其需要注意,如果使用的是vs2012及更低的vs版本,请下载32位的driver,否则VS将不能成功连接ODBC。原因是VS只有32位版本,原因参照-为什么VS2010没有64位版本

  1.2 ODBC连接mysql

    打开ODBC(ODBC分32位和64位)。

    

    在用户DSN中点击添加。

    

    选择mysql odbc unicode driver,完成,出现以下界面。

    

    在Data Source Name中为数据源命名;Deccription为描述,可不填;TCP/IP Sever 填写localhost;User填写mysql用户名,Password填写mysql密码。当以上均填写正确时,Database就可以有mysql数据库中的数据库供你选择了。而后点击Test,显示successful则成功。

    然后回到用户DSN界面可以看到自己的DSN了。

2.MFC程序连接ODBC

    2.1 打开stdafx.h头文件,添加如下语句

      #include <odbcinst.h> 
      #include "afxdb.h"

      这两个头文件定义了之后要用到的数据库操作类。

    2.2 打开数据库

CDatabase db;
CString sentence;
sentence.Format("ODBC;DSN=Sunny;UID=%s;PWD=%s",MyPublicData.login_name,MyPublicData.login_pass);
db.Open(NULL,FALSE,FALSE,sentence);
if(!db.IsOpen ())
MessageBox();
CRecordset rs( &db );
rs.Open( CRecordset::forwardOnly, _T("SELECT * FROM login_info"));

  其中,format中的DSN、UID、PWD分别对应已建ODBC中的Data Source Name、User、Password。sql语句自行定制。

  以上代码仅为打开数据库的最简单操作。

  

MFC通过ODBC连接mysql(使用VS2012编写MFC)的更多相关文章

  1. MFC通过ODBC连接Mysql程序

    分享到 一键分享 QQ空间 新浪微博 百度云收藏 人人网 腾讯微博 百度相册 开心网 腾讯朋友 百度贴吧 豆瓣网 搜狐微博 百度新首页 QQ好友 和讯微博 更多... 百度分享 MFC通过ODBC连接 ...

  2. 使用ODBC连接MySQL和EXCEL

    1.安装ODBC 安装MySQL的时候,可以直接把ODBC一并安装了.如果没有安装的话,则在 https://dev.mysql.com/downloads/connector/odbc/ 下载相应的 ...

  3. Java连接MySQL数据库。编写一个应用程序,在主类Test_4类中,通过JDBC访问stu数据库,显示t_student表中的内容(表结构见表1),显示效果自己设计。

    题目2:编写一个应用程序,在主类Test_4类中,通过JDBC访问stu数据库,显示t_student表中的内容(表结构见表1),显示效果自己设计.之后,可根据显示的内容进行某条记录的删除(以id为条 ...

  4. MFC与C#连接MYSQL乱码问题

    MYSQL数据库编码为:latin1 问题现象:插入中文乱码,及用中文作参数无法得到相应数据 如select * from userinfo where username='李小明' MFC中解决方法 ...

  5. ODBC连接mysql

    配置/etc/odbc.ini 执行命令:isql freeswitch freeswitch 123456 -v 第一个报错: [08S01][unixODBC][MySQL][ODBC 5.3(w ...

  6. ODBC连接MySQL出现"E_FAIL"错误

    ODBC不能处理这种格式的数据:0000-00-00,将其更新为正常的时间即可解决

  7. MFC连接MySQL

    其实,以前弄过sql,mysql应该是顺理成章很简单的事情,但很无奈,傻傻地弄了很久,还请教了别人,别人告诉我的跟我在网上查到的都是一样的,但还是不行,归根接地就是“mysql-connector-o ...

  8. eclipse编写连接MySQL的简单动态网页

    准备工作 下载Tomcat,建议使用最新版.下载并安装MySQL数据库,为了方便操作数据库,可以下载Navicat Premium,最新版不会提示不支持密码加密方式,所以下载最新版.除此之外,要想连接 ...

  9. Delphi XE8中的DBExpress使用ODBC方式连接MySQL 5.6.24 X64!!!!

    Delphi:XE2.XE8 MySQL:5.6.24 X64 今天准备做一个使用数据库的REST程序,最开始使用XE2,后来使用XE8,但是我遇到一个让我头疼的问题,就是无法连接我要使用的数据库,这 ...

随机推荐

  1. 【位运算DFS/DLX】【HDU1426】【数独】

    题意:标准的一道数独题 DFS做法: 将横纵九宫格里的数字用位运算状态压缩,且可以通过逻辑或来确定总共有哪些数字被选择了,很方便也很快,代码如下 #include <cstdio> #in ...

  2. Jquery揭秘系列:谈谈bind,one,live,delegate,on事件及实现

    在Jquery里面,我们用的最多的就是事件绑定了,事件绑定有多个函数.例如:bind,one,live,delegate,on等等. on() jQuery事件绑定.on()简要概述及应用 看源码发现 ...

  3. 使用 Struts2 校验器校验用户注册信息

    基于验证框架的输入校验 一.创建一个struts2项目testValidators.Struts2 初体验:http://www.cnblogs.com/likailan/p/3280820.html ...

  4. codevs1127

    学校里有一个水房,水房里一共装有m 个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为1. 现在有n 名同学准备接水,他们的初始接水顺序已经确定.将这些同学按接水顺序从1到n 编号,i 号同学的 ...

  5. [Tree]Binary Tree Preorder Traversal

    Total Accepted: 97599 Total Submissions: 257736 Difficulty: Medium Given a binary tree, return the p ...

  6. ie兼容---haslayout

    要想更好的理解 css, 尤其是 IE 下对 css 的渲染,haslayout 是一个非常有必要彻底弄清除的概念.大多IE下的显示错误,就是源于 haslayout. 什么是 haslayout ? ...

  7. QT5中QString与char *的相互转换

    以例子说明: #include <QApplication> #include <QDebug> #include <QString> #include <Q ...

  8. Google机器学习教程心得(三) 好的feature

    什么造就好的Feature Google Machine Learning Recipes 3 官方中文博客 http://chinagdg.org/2016/03/machine-learning- ...

  9. win8 VS2010 配制OpenGL

    glut下载地址: http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip glut.h  ---> C:\Progr ...

  10. 论山寨手机与Android 【13】SmartPhone AP系统

    在第9章中我们提到,从功能上讲对于智能手机的一个粗略的概括是,智能手机 == 电脑 + 移动网卡,或者更准确地说,智能手机的硬件结构分为应用程序处理器AP,和基带处理器BP两个部分.这里隐含着两个问题 ...