如何在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
#include<cppconndriver.h> #include<cppconnexception.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 FilesMySQLConnector.C++ 1.1include
C:Program Filesboost_1_60_0
2、项目(P)——xxx属性页——配置属性——链接器——常规——附加库目录添加
C:Program FilesMySQLConnector.C++ 1.1libdebug
3、项目(P)——xxx属性页——配置属性——链接器——输入——附加依赖项添加
mysqlcppconn.lib
4、将C:Program FilesMySQLMySQL Server 5.6lib目录下的libmysql.dll和C:Program FilesMySQLConnector.C++ 1.1libdebug目录下的mysqlcppconn.dll,拷贝到工程目录中(和源文件放在一个目录即可)。
对于以Release版本运行的程序:
1、项目(P)——xxx属性页——配置属性——C/C++——附加包含目录添加:
C:Program FilesMySQLConnector.C++ 1.1include
C:Program Filesboost_1_60_0
2、项目(P)——xxx属性页——配置属性——链接器——常规——附加库目录添加
C:Program FilesMySQLConnector.C++ 1.1libopt
3、项目(P)——xxx属性页——配置属性——链接器——输入——附加依赖项添加
mysqlcppconn.lib
4、将C:Program FilesMySQLMySQL Server 5.6lib目录下的libmysql.dll和C:Program FilesMySQLConnector.C++ 1.1libopt目录下的mysqlcppconn.dll,拷贝到工程目录中(和源文件放在一个目录即可)。
为什么区别配置Debug和Release版本?
可以试一下,以本文的程序为例,以Debug的配置,在Release版本下运行不了程序。反之亦然。
运行结果:
数据库中的数据
程序运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助。