数据库操作:MFC连接与MYSQL

mysql 与MFC通常情况下都是用ODBC或者是是ADO相连接,但有点伤 我直接找网上的教程,仿照着进行连接,试了n边还是只能连接上,但无法进行如图读取,写入的操作。~有点伤心。

只能去看MYSQL手册,里面有C与MYSQL的API接口;由于MFC框架中调试比较困难,所以我现在win32控制台下实现与数据库的连接与对数据库的操作。(可能这也是原因之一,我错误的以为MFC是程序主体,其实MFC只是界面和消息相应,有点伤~).

首先我用的是是MYSQL5.5(建议按装32位的)

为了方便我在MYSQL中新建一个用户,并给与其相应权限

接下来我先进行了控制台上的编程:

#include"winsock.h"

#include"mysql.h"

#pragma comment(lib,"libmySQL.lib")

#include "stdio.h"

#include

struct conn_info

{

char *host;

char *user;

char *password;

char *db;

};

MYSQL* mysql_conn_setup(conn_info con)

{

MYSQL *mysql = mysql_init(NULL);

if (!mysql_real_connect(mysql,con.host,con.user,con.password,con.db,3306,NULL,0))

{

printf("Conection error : %s/n", mysql_error(mysql));

exit(1);

}

return mysql;

}

MYSQL_RES* mysql_conn_sqlQuery(MYSQL *mysql,char *sql_Query)

{

if(mysql_query(mysql,sql_Query))

{

printf("MySQL quer error:%s/n",mysql_error(mysql));

exit(1);

}

return mysql_use_result(mysql);

}

void main()

{

MYSQL *com;

MYSQL_RES *res;

MYSQL_ROW row;

char sql_query[100];

memset(sql_query,'\0',100);

sprintf(sql_query,"show tables");

struct conn_info info;

info.host="localhost";

info.user="lemon";

info.password="123";

info.db="student";

com=mysql_conn_setup(info);

res=mysql_conn_sqlQuery(com,sql_query);

printf("mysql所有表:\n");

int k=0;

while((row=mysql_fetch_row(res))!=NULL)

{

printf("%s\n",row[0]);

}

mysql_free_result(res);

mysql_close(com);

}

能显示出来数据库中表的张数(我去,用API就是这么快);

struct conn_info

{

char *host;

char *user;

char *password;

char *db;

};

其中结构体内保存了连接数据库所需要的信息,包括用户名,接口,密码,数据库

MYSQL* mysql_conn_setup(conn_info con)

{

MYSQL *mysql = mysql_init(NULL);

if (!mysql_real_connect(mysql,con.host,con.user,con.password,con.db,3306,NULL,0))

{

printf("Conection error : %s/n", mysql_error(mysql));

exit(1);

}

return mysql;

}

是测试是否连接上数据库;

MYSQL_RES* mysql_conn_sqlQuery(MYSQL *mysql,char *sql_Query)

{

if(mysql_query(mysql,sql_Query))

{

printf("MySQL quer error:%s/n",mysql_error(mysql));

exit(1);

}

return mysql_use_result(mysql);

}

是向数据库传入你要操作的语句,sql_Query中保存的SQL语句,mysql为主程序中申明的MYSQL指针

row=mysql_fetch_row(rew)

是抓取MYSQL返回的行数

用到mysql的部分基本上是这些,解释有点俗请见谅;

用API就是这么爽!

mfc 访问局域网mysql_数据库操作:MFC连接与MYSQL相关推荐

  1. vs2008 MFC访问Access 2010数据库

    MSDN给出了各种语言访问Access 2010的详细介绍:点击打开链接.下图列出了各种语言访问Access 2010的接口. 我在VS2008下使用MFC下的ODBC相关接口访问Access 201 ...

  2. python数据存储系列教程——python中mongodb数据库操作:连接、增删查改、多级路径

    全栈工程师开发手册 (作者:陈玓玏) python教程全解 调试环境python3.6,调试python操作mongodb数据库,首先要在本地或服务器安装mongodb数据库.安装参考:http:// ...

  3. wex导入mysql_数据库操作

    db对象 db配置 配置文件:/root/cfgs/boot/cfg_db.php: 表的前后缀:db_prefix-表前缀,db_suffix-表后缀: 默认表前缀为空,表后缀为_ys,由安装时配置 ...

  4. 如何远程连接服务器mysql_如何实现远程连接服务器MySQL

    使用MySQL,可以在本地局域网测试,但很多情况下,我们需要通过给定的服务器及端口信息,来连接服务器上的数据库来进行操作.如何配置呢? 在服务器上安装好MySQL后,首先要启动mysqld服务.这样的 ...

  5. 1046错误mysql_数据库实例:如何解决mysql 1046错误

    数据库实例:如何解决mysql 1046错误 mysql 1046错误解决: require_once './include/common.inc.php'; $maxpostnum = 200; / ...

  6. vc访问远程mysql_利用vc远程连接mysql一例

    最近碰到一个应用,要求从WinCE连接MySQL数据库,并进行读写操作.因此,第一步,首先要在Windows下能够实现该功能.了解一下相关背景知识,知道可以利用MySQL提供的库函数实现该功能,并下载 ...

  7. python数据存储系列教程——python中redis数据库操作:连接、增删查改、多级路径

    全栈工程师开发手册 (作者:陈玓玏) python教程全解 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品 ...

  8. python数据存储系列教程——python中mysql数据库操作:连接、增删查改、指令执行

    全栈工程师开发手册 (作者:陈玓玏) python教程全解 调试环境python3.6,调试python操作mysql数据库,首先要在本地或服务器安装mysql数据库.安装参考:http://blog ...

  9. python oracle数据库操作_Python连接oracle数据库的基本操作

    1 #导入cx_Oracle模块 2 importcx_Oracle as cx3 ​4 #连接数据库 5 db = cx.connect('username/password@host/orcl') ...

最新文章

  1. 转载 :28 个 Unix/Linux 的命令行神器
  2. Ubuntu 12.10 安装 PHP
  3. C语言函数大全(a开头)
  4. QQ目录里哪个文件是记录系统消息的?
  5. webpack的四个核心概念
  6. 台安变频器n2按键说明_台安N2变频器说明书.pdf
  7. java深拷贝和浅拷贝_Java 深拷贝浅拷贝 与 序列化
  8. mysql 范围内日期列表_MySQL:即使没有记录,也选择范围内的所有日期
  9. 【重难点】【Java集合 03】ArrayList、LinkedList、 Vector 和 Stack 的区别、CopyOnWriteArrayList
  10. PHP编译参数 --prefix=/usr/local/php 的“深远”影响
  11. jQuery图片水平滑动延迟加载动画
  12. token什么意思中文_gre是什么意思中文
  13. r语言 tunerf函数_R语言非参时间序列(六):波动脉冲响应(VIR)中的关键公式推导...
  14. 关于我在黑马程序员培训毕业后的亲身体验
  15. 利用MapabcAPI实现基于浏览器的地理定位
  16. python format是什么意思_python的format什么意思
  17. kubernetes 学习记录-two
  18. 小牛叔讲Python第6章:for循环-能计数的循环1234567
  19. Windows本地域名转接
  20. VRChat模型制作笔记

热门文章

  1. python 提交表单登录不成功_Python http requests模拟登录与提交表单的实现问题
  2. 零基础入门学习Python(26)-文件1
  3. Arthritis Rheumatology:张烜+王军发表系统性红斑狼疮患者的肠道菌群变化
  4. 公益合种樟子松/新树专车3天领证
  5. SPIEC-EASI的微生物网络构建示例
  6. KEGG在线数据库使用攻略
  7. 8核32g mysql性能_MySQL性能优化之参数配置
  8. Python使用matplotlib函数subplot可视化多个不同颜色的折线图、自定义数据点的形状、自定义折线图的颜色
  9. R语言ggplot2可视化条形图(bar plot)、并为条形图添加误差条(error bar)、自定义设置误差条(error bar)的颜色/色彩( Barplots with Error bar)
  10. R语言ggplot2可视化:置信区间与分组具有相同色彩、自定义置信区间带的色彩、Make confidence intervals the same color as line by group