服务器之家

服务器之家 > 正文

VS2013连接MySQL5.6成功案例一枚

时间:2020-06-08 17:20     来源/作者:林多

如何在VS2013下对MySQL5.6进行连接,本文为大家提供了解决方案,供大家参考,具体内容如下

环境:win832系统,VS2013,MySQL5.6,boost1.60
需要注意的是,安装MySQL时需要安装完整版本,否则在MySql的目录下可能会没有Connector.C++ 1.1这个目录。
boost下载后,直接解压即可。(我是放在C:\Program Files目录下),下载地址:http://www.boost.org/users/download/
连接的方式有2种

一种是纯C风格的,不需要使用Connector.C++ 1.1目录下提供的内容。(个人觉得麻烦,代码看着乱,网上有很多资源)。

一种就是利用Connector.C++ 1.1提供的内容,代码简洁,这里只讲这种方法连接数据库。

首先,新建一个VC++的win32空项目。添加源文件,代码如下(代码暂时无法运行,具体配置在后面)
源.cpp

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include<cppconn\driver.h>
#include<cppconn\exception.h>
#include <cppconn/resultset.h>
#include <cppconn/statement.h>
#include<mysql_connection.h>
#include<iostream>
#include<string>
using namespace std;
int main()
{
 
 sql::Driver *dirver;
 sql::Connection *con;
 sql::Statement *stmt;
 sql::PreparedStatement *pstmt;
 sql::ResultSet *res;
 dirver = get_driver_instance();
 //连接数据库
 con = dirver->connect("localhost", "root", "123456");
 //选择mydata数据库
 con->setSchema("mydata");
 con->setClientOption("characterSetResults", "utf8");
 stmt = con->createStatement();
 //从name_table表中获取所有信息
 res = stmt->executeQuery("SELECT * from name_table");
 //循环遍历
 while (res->next())
 {
  //输出,id,name,age,work,others字段的信息
  cout << res->getInt("ID") << " | "
  << res->getString("name") << " | "
  << res->getInt("age") << " | "
  << res->getString("work") << " | "
  << res->getString("others") << endl;
 
 }
 //清理
 delete res;
 delete stmt;
 delete con;
 
 return 0;
}

对于以Debug版本运行的程序:
1、项目(P)——xxx属性页——配置属性——C/C++——附加包含目录添加:
C:\Program Files\MySQL\Connector.C++ 1.1\include
C:\Program Files\boost_1_60_0
2、项目(P)——xxx属性页——配置属性——链接器——常规——附加库目录添加
C:\Program Files\MySQL\Connector.C++ 1.1\lib\debug
3、项目(P)——xxx属性页——配置属性——链接器——输入——附加依赖项添加
mysqlcppconn.lib
4、将C:\Program Files\MySQL\MySQL Server 5.6\lib目录下的libmysql.dll和C:\Program Files\MySQL\Connector.C++ 1.1\lib\debug目录下的mysqlcppconn.dll,拷贝到工程目录中(和源文件放在一个目录即可)。

对于以Release版本运行的程序:
1、项目(P)——xxx属性页——配置属性——C/C++——附加包含目录添加:
C:\Program Files\MySQL\Connector.C++ 1.1\include
C:\Program Files\boost_1_60_0
2、项目(P)——xxx属性页——配置属性——链接器——常规——附加库目录添加
C:\Program Files\MySQL\Connector.C++ 1.1\lib\opt
3、项目(P)——xxx属性页——配置属性——链接器——输入——附加依赖项添加
mysqlcppconn.lib
4、将C:\Program Files\MySQL\MySQL Server 5.6\lib目录下的libmysql.dll和C:\Program Files\MySQL\Connector.C++ 1.1\lib\opt目录下的mysqlcppconn.dll,拷贝到工程目录中(和源文件放在一个目录即可)。

为什么区别配置Debug和Release版本?
可以试一下,以本文的程序为例,以Debug的配置,在Release版本下运行不了程序。反之亦然。

运行结果:
数据库中的数据

VS2013连接MySQL5.6成功案例一枚

程序运行结果

VS2013连接MySQL5.6成功案例一枚

以上就是本文的全部内容,希望对大家的学习有所帮助。

标签:

相关文章

热门资讯

歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
返回顶部