继上一片博客,这篇介绍数据库与mfc的连接,上篇是介绍用控制台连接mysql,其实mfc为代码增加一个界面,和一些消息相应(个人认为)
首先建一个mfc的工程,我这边建了一个dlg 建好后看一下选项-> 目录->包含目录和库目录中是否包含了mysql的路径
再在dlg.cpp中添加:
#include”winsock.h”
#include“mysql.h”
#pragma comment(lib,”libmysql.lib”)
然后与控制台下应用相类似:
声明一一个结构体来保存数据库操作所需要的变量
接下来是对界面的设计:
我大致设计了:
按钮:数据库连接,查表(数据库下面有那些表),表内容(表中字段的内容),插入(将需向表中字段添加内容)
edit控件:用来显示从数据库中返回的值
大致将edit控件绑定一下的变量:
接下来设置按钮的功能函数:同样在ctrl+w下选择需要的函数相应,添加(注意都在dlg类下添加),
在连接按钮中添加消息响应函数:
在查表中添加消息响应函数:
在表内容按钮中添加响应函数:
注:这边设置编码是因为edit控件好像不能显示utf8的编码类型所以要将输出的编码类型变成gbk,当然好像默认的latin1编码1类型,edit控件也能输出
在插入按钮中添加消息响应函数:
最后就能完成基本的查表插入等操作
实验结果:
显示结果如图:
然后我向student表插入全为9的一条记录;
然后用mysql的控制台查询表内的记录结果如图:
注前面两行乱码是因为我将这个数据库创建时是用默认的latin1,后来因为需要将mysql编码方式变为了utf8,这张表的编码方式没去改变,而且提醒一下改为utf8后在控制台下显示记录会乱码,原因是控制台显示的字符编码为gbk,这时要在查表之前加上set character set gbk
在mfc上更新的话主要用到了
updatedata(true);界面到后台
updatedata(false);后台到界面