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

原创文章,转载请注明原文: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语句自行定制。

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

  

 

转载于:https://www.cnblogs.com/lucio_yz/p/3710392.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值