用意

网上看了很多教程,有些过时了,有些感觉不够明白。
为了以后自己要再搭还可以用到。
第一次写blog

准备

  1. VS2017,怎么安装就不说了…
  2. mysql,下面会详细说
  3. navicat,只是个可视化工具
  4. boost

mysql安装

https://dev.mysql.com/downloads/mysql/ (很多教程都是网页样式改了)

为什么我安装MYSQL需要其他软件_#include


点击箭头,

为什么我安装MYSQL需要其他软件_c++_02


点击箭头,要安装8的可以在第一步就点击. 因为MSI安装包 有集成Connector C++我感觉挺方便的

为什么我安装MYSQL需要其他软件_为什么我安装MYSQL需要其他软件_03


再点击箭头,开始下载

为什么我安装MYSQL需要其他软件_mysql_04


好像安装过一次的,再打开 就会有很多选项

为什么我安装MYSQL需要其他软件_mysql_05


为什么我安装MYSQL需要其他软件_c++_06


我mysql 选的是 5.7.XX connectorC++ 选的是 1.1.XX 都不记得了- -,然后都选的是 X86的 毕竟向下兼容嘛。

为什么我安装MYSQL需要其他软件_为什么我安装MYSQL需要其他软件_07


选到右边后,下面有一个设置路径的。最好都设置在一起 整理方便。

为什么我安装MYSQL需要其他软件_#include_08


然后next有个设置账号密码的记得设一下,端口不用改。

后面选项就一个开机是否启动,我设置的不启动。

不知道是否详细.

mysql安装END.

mysql安装检查

mysql要看下服务有没有开 win+r -> services.msc (按我步骤装完mysql,应该都会这个服务的)

为什么我安装MYSQL需要其他软件_mysql_09


因为我设置的开机不自动启动 所以手动给他启动一下

然后可以先测试一下, win+r -> d: -> cd +(下面的路径)

为什么我安装MYSQL需要其他软件_c++_10

为什么我安装MYSQL需要其他软件_mysql安装_11


mysql -u用户名 -p 回车 输入密码 出现这样就是 安装成功且服务开启了。

或者你可以用navicate 测试 顺便建个库+表

为什么我安装MYSQL需要其他软件_mysql安装_12


navicate 新建mysql连接 然后 点 连接测试 或者 确定都可以 没报错就是OK了

boost安装

百度boost 第一个就是

进去后

为什么我安装MYSQL需要其他软件_mysql_13


为什么我安装MYSQL需要其他软件_mysql安装_14


为什么我安装MYSQL需要其他软件_为什么我安装MYSQL需要其他软件_15


我下的1.55

下载完解压

为什么我安装MYSQL需要其他软件_为什么我安装MYSQL需要其他软件_16


boost安装END;

VS配置

新建控制台项目

右键解决方案 - 属性。 注意!

为什么我安装MYSQL需要其他软件_为什么我安装MYSQL需要其他软件_17


要对应

为什么我安装MYSQL需要其他软件_#include_18


为什么我安装MYSQL需要其他软件_c++_19


为什么我安装MYSQL需要其他软件_mysql_20


为什么我安装MYSQL需要其他软件_mysql_21


配置好像有些地方不用吧。。因为我是试了很多教程的。。不懂的就照抄我的吧

VS配置END

上代码

#include <iostream>
#include <map>
#include <string>
#include <memory>
#include "mysql_driver.h"
#include "mysql_connection.h"
#include "cppconn/driver.h"
#include "cppconn/statement.h"
#include "cppconn/prepared_statement.h"
#include "cppconn/metadata.h"
#include "cppconn/exception.h"

using namespace std;
using namespace sql;

int main()
{
	mysql::MySQL_Driver *driver = 0;
	Connection *conn = 0;

	try
	{
		driver = sql::mysql::get_mysql_driver_instance();
		conn = driver->connect("127.0.0.1:3306/数据库名", "root", "密码");		//这里记得改
		cout << "连接成功" << endl;
	}
	catch (...)
	{
		cout << "连接失败" << endl;
	}
	Statement* stat = conn->createStatement();
	stat->execute("set names 'GBK'");			//设置C++这里接受到的中文不会出乱码
	ResultSet *res;
	res = stat->executeQuery("SELECT * FROM name");			//name自己改成自己的表名
	while (res->next())
	{
		cout << "name:" << res->getString("name") << endl;				//name和nickname 自己改成自己的列名
		cout << "nickname:" << res->getString("nickname") << endl;
	}
	if (conn != 0)
	{
		delete conn;
	}
	system("pause");
}

代码END

return 1;

教程结束。
第一次写.有建议或者问题的可以留言一下。
可能会遇到sql存中文出现问题的,有需要的话我再补中文的教程