首页  >  文章  >  数据库  >  MFC通过ODBC连接mysql(使用VS2012编写MFC)

MFC通过ODBC连接mysql(使用VS2012编写MFC)

WBOY
WBOY原创
2016-06-01 13:06:261135浏览

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。


在用户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 #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语句自行定制。

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

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn