失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > c/c++连接mysql数据库设置及乱码问题(vs连接mysql数据库 使用Mysql API操作数据库)...

c/c++连接mysql数据库设置及乱码问题(vs连接mysql数据库 使用Mysql API操作数据库)...

时间:2022-05-15 20:09:37

相关推荐

c/c++连接mysql数据库设置及乱码问题(vs连接mysql数据库 使用Mysql API操作数据库)...

我的安装环境:

(1)vs(32位版) (vs只有32位的 没有64位的,但是它可以编译出64位的程序) ;

(2)mysql-5.7.15(64位)

vs中的设置(按步骤来,顺序不要乱)

(1)首先在vs中新建一个控制台程序 MysqlTest(或者选择一个已有的项目)

(2)设置项目平台为64位平台:

1)右击项目,选择属性

弹出一个对话框,点右上角的配置管理器,如图:

接着点 平台下面的那个下拉选项 ,然后 选 新建 如图:

接着选 x64 ,然后点确定:

都选X64:

vs中也要选x64:

完事。

2)设置项目 包含目录 和 库目录

设置项目属性,先设置包含目录:

出来如下对话框 接着点添加:

接着:

选择的目录是 mysql 安装路径下的 include 目录(我的路径是:D:\Office Software\mysql-5.7.15-winx64):

点确定:

接着设置 库目录:

同样新建:

设置路径:

选择lib目录:

接着:

3)把mysql安装目录下的 lib文件夹 下的 libmysql.dll添加到项目目录中:

复制到项目根目录中:

MySQL设置:

需要把mysql的字符集设置成utf8格式,查看mysql字符集的命令是:show variables like "character%";(需要先从cmd登陆到mysql);

mysql设置默认字符集 不会设置的同学直接百度自行解决,实在不会的可以加我QQ1306348864 咨询本人!记得说明来意

设置完效果如下图:

开始写代码

// MysqlTest.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h" //这个是创建项目时自己带的,不用管它#include <WinSock2.h> //要写#include "mysql.h" //要写 , 使用mysql API时用#include <iostream> #pragma comment(lib,"wsock32.lib") //把这两个lib文件加进来#pragma comment(lib,"libmysql.lib")using namespace std;int _tmain(int argc, _TCHAR* argv[]){MYSQL mysql; //定义一个MYSQL类型的变量mysqlMYSQL_RES *result; //查询结果集MYSQL_ROW row; //一行纪录mysql_init(&mysql);//初始化mysql//连接mysql 该函数的参数含义分别是:(接受函数返回的数据库的指针,主机名,连接数据库时用的用户名,数据库密码,要连接哪个数据库,端口,NULL,标志)mysql_real_connect(&mysql, "localhost", "root", "wxl1306348864", "c", 3306, NULL, 0);mysql_set_character_set(&mysql, "gbk"); //设置连接字符集 可以是utf8,可以是gbk, 这里用utf8的时候中文乱码,但gbk么事,不知为啥char *sql = "select * from user"; //SQL语句 (连接的数据库名:c ,表:user)mysql_query(&mysql, sql);//查询result = mysql_store_result(&mysql);//取回查询结果//输出查询结果while ((row = mysql_fetch_row(result)) != NULL){cout << row[1] << endl; //row[0]表示第一列,row[1]表示第二列,依次类推.. }system("pause");return 0;}

执行结果如下:

我的数据库:

如果觉得《c/c++连接mysql数据库设置及乱码问题(vs连接mysql数据库 使用Mysql API操作数据库)...》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。