数据库操作: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<string.h>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_数据库操作:MFC连接与MYSQL
数据库操作:MFC连接与MYSQL mysql 与MFC通常情况下都是用ODBC或者是是ADO相连接,但有点伤 我直接找网上的教程,仿照着进行连接,试了n边还是只能连接上,但无法进行如图读取,写入的操 ...
- python数据存储系列教程——python中mongodb数据库操作:连接、增删查改、多级路径
全栈工程师开发手册 (作者:陈玓玏) python教程全解 调试环境python3.6,调试python操作mongodb数据库,首先要在本地或服务器安装mongodb数据库.安装参考:http:// ...
- python数据存储系列教程——python中mysql数据库操作:连接、增删查改、指令执行
全栈工程师开发手册 (作者:陈玓玏) python教程全解 调试环境python3.6,调试python操作mysql数据库,首先要在本地或服务器安装mysql数据库.安装参考:http://blog ...
- mfc连接ubuntu mysql数据库_Ubuntu 16.04 Linux系统下使用C++连接mysql数据库
Ubuntu安装mysql sudo apt-get install mysql-server,mysql-client,libmysqlclient-dev 安装的时候会提示你设置数据库的密码 安装 ...
- pymysql建表_Python数据库操作,针对pymysql 和 MYSQL数据库
此文将以MYSQL数据库做为例子,pymysql库作为驱动进行学习 安装MYSQL数据库与pymysql第三方库 安装pymysql库不多做叙述 安装navicat for mysql,此程序用来管理 ...
- python数据存储系列教程——python中redis数据库操作:连接、增删查改、多级路径
全栈工程师开发手册 (作者:陈玓玏) python教程全解 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品 ...
- python oracle数据库操作_Python连接oracle数据库的基本操作
1 #导入cx_Oracle模块 2 importcx_Oracle as cx3 4 #连接数据库 5 db = cx.connect('username/password@host/orcl') ...
- mysql 数据库操作类_【数据库操作类】10个php操作数据库类下载
数据库(Database)操作是在开发过程中重要的组成部分,熟练掌握数据库的操作是开发人员必备的武器.PHP中文网为大家提供了各种封装好的php数据库操作类库,供大家下载和学习. 相关mysql视频教 ...
- MySQL数据库操作语言
MySQL数据库操作语言 文章目录 MySQL数据库操作语言 `前言` 在学习具体的SQL语句之前,先来了解通用语法. 1.SQL 基本操作语言有哪些? 2.DDL 数据定义语言[^DDL] 2.1. ...
最新文章
- 南京大学计算机学院袁健,袁健(南京大学大气科学学院教授)_百度百科
- 微信上线新功能:再也不怕好友赖账了
- mascara-2(MetaMask/mascara本地实现)-连接线上钱包
- 阿里开源的那个牛X的问题排查工具——Arthas,推出IDEA插件了!
- [MapReduce_add_4] MapReduce 的 join 操作
- Python基础小结
- Linux环境下利用句柄恢复Oracle误删除的数据文件
- HTML 区块、内联元素
- 垂直旋转转台电机选型_高精密YRT转台轴承概览
- 【测试】对手机拍照测试用例的设计
- java工作流引擎Jflow父子流程demo
- Keil5下载烧录错误常见问题
- oracle数据库开机自启,oracle数据库开机自动启动
- (二)动态白盒测试(含逻辑覆盖例子)
- 最伟大的IT人物10强(转)
- IT狂人职场路:揭秘华为百度高管如何炼成?
- 显示器序列号查询方式
- Spring MVC之redirect、forward和普通跳转
- 杰理之MIDI音乐实现【篇】
- MySQL中的子查询(第八章)