C++程序要连接MySQL数据库,分别需要:
1.安装MySQL Server
2.在IDE中配置依赖
3.在代码中调用MySQL库
一、安装MySQL Server
1.在浏览器里打开MySQL的官网http://www.mysql.com/
2.进入页面顶部的"Downloads"
3.打开页面底部的“MySQL Community(GPL) Downloads”
4.点击MySQL Installer for Windows,在Windows安装MySQL
5.上面比较小的是在线安装,下面大的是离线安装。这里果断选择离线安装。
注意:MSI格式是指windows的安装程序,下载后直接双击就能进入安装向导的那种,区别于对文件进行解压的安装方式;
6.这个页面告诉询问你是否登录,告诉你登录之后有哪些好处,我们不登录,点击页面底部的“No thanks, just start my download.”按钮进入下载页面(直接下载速度太慢,用迅雷下载会快很多)
7.下载完成后打开选择Custom(或者Server only)
(建议只安装数据库服务器,不要选系统默认的,否则会默认下载很多与mysql相关的软件!)
Developer Default(系统默认)——安装MySQL开发所需的所有产品
Server only(仅服务器)——只安装MySQL服务器产品
Client only(仅客户端)——只安装MySQL客户端产品
FUll(完全的)——安装所有包含的MySQL产品和特性
Custom(自定义)——手动选择安装在系统上的产品
8.把MySQL Serve添加到右侧,点击Next(这里的Development Coponents对应的是接下来C++程序要链接的动态库libmysql.dll)
9.一直next直到在Root Account Password设置数据库root账号的密码,输入完密码后点Next
10.设置名称,并取消开机启动
11.一直next然后Finish
12.测试安装是否成功,打开菜单,打开MySQL命令行
13.输入密码(密码错误会自动退出)
14.安装成功
二、在IDE中配置依赖
1.先将配置调成x64,因为我们下载的是x64的MySQL
2.然后点击工具栏的项目,打开项目属性
3.点击C/C++—》常规—》附录包含目录,点编辑
4.把include路径添加进去,我的是C:\Program Files\MySQL\MySQL Server 8.0\include,include里面包含了mysql.h等头文件
5.点击链接—》常规—》附加库目录,点编辑
6.把lib路径添加进去,我的是C:\Program Files\MySQL\MySQL Server 8.0\lib
三、在代码中调用MySQL库
1.测试代码:
#include<iostream>
#include <mysql.h>
#pragma comment(lib,"wsock32.lib")
#pragma comment(lib,"libmysql.lib")
int main()
{
std::cout << "Hello World!\n";
//Link Mysql
MYSQL* conn;
MYSQL_RES* res;
MYSQL_ROW row;
const char* server = "localhost";
const char* user = "root";
const char* password = "Password"; // got tot keep my data secret
const char* database = "Database";
conn = mysql_init(NULL);
// connect to database
if (!mysql_real_connect(conn, server, user, password, database, 3306, NULL, 0))
{
std::cout << stderr << "%s\n" << mysql_error(conn);
return -1;
}
// send SQL query
if (mysql_query(conn, "select * from tables"))
{
std::cout << stderr << "%s\n" << mysql_error(conn);
return -1;
}
res = mysql_use_result(conn);
// output table name
while ((row = mysql_fetch_row(res)) != NULL)
{
printf("%s %s %s %s\n", row[0], row[1], row[2], row[3]);
}
// close connection
mysql_free_result(res);
mysql_close(conn);
}
2.报错找不到libmysql.dll,找到libmysql.dll(C:\Program Files\MySQL\MySQL Server 8.0\lib),复制到项目工程里(或者复制到C:\Windows\System32)
3.运行成功