读书人

VS2008项目应用C++连接MySQL

发布时间: 2012-11-06 14:07:00 作者: rapoo

VS2008项目使用C++连接MySQL
0、安装环境
1)安装MySQL5.5(http://dev.mysql.com/downloads/mysql/),不是必须,只是方便测试,同时可获取libmysql.lib和libmysql.dll
2)安装MySQL Connector C++ 1.1.1(http://dev.mysql.com/downloads/connector/cpp/),安装时注意选择“完全安装”,否则只安装release版链接库,没有debug版
这里简单说明下安装后的库文件:
mysqlcppconn.lib 为动态链接库,发布时需要带上mysqlcppconn.dll
mysqlcppconn-static.lib 为静态链接库,发布时不需要mysqlcppconn.dll
注意,上面两个链接库都是动态链接到libmysql.lib的,所以不管用的上述哪种链接,发布时都需要libmysql.dll
另外,如果是C开发而不是C++,可以直接使用mysql安装目录下的include和lib\libmysql.lib进行开发,不需要任Connector
3)安装boost库(http://sourceforge.net/projects/boost/files/boost/1.51.0/),其实没有那么麻烦,推荐学习下。

1、新建项目,类型根据自己需要

2、设置头文件目录
项目属性->C/C++->附件包含目录:
C:\Program Files\MySQL\MySQL Connector C++ 1.1.1\include
C:\boost_1_42

3、设置链接库
项目属性->链接器->常规->附加库目录: C:\Program Files\MySQL\MySQL Connector C++ 1.1.1\lib\debug

项目属性->链接器->输入->附加依赖项: mysqlcppconn.lib

如果静态链接,附件依赖项:mysqlcppconn-static.lib


4、上代码
 #include "stdafx.h"  #include<iostream>  #include <mysql_connection.h>  #include <mysql_driver.h>  #include <cppconn\statement.h>  #include <cppconn\resultset.h>    using namespace std;  using namespace sql;    int main()  {   Driver *pDriver;   Connection *pConnection;   Statement *pStatment;   ResultSet *pResultSet;     pDriver = mysql::get_mysql_driver_instance();   pConnection = pDriver->connect("tcp://127.0.0.1:3306", "root", "123456");   pStatment = pConnection->createStatement();   pResultSet = pStatment->executeQuery("Select * from test.t1");   while (pResultSet->next())   {   int n = pResultSet->getInt("aa");   cout << "t1.aa = " << n <<endl;   }     delete pResultSet;   delete pStatment;   delete pConnection;     system("pause");     return 0;  }

5、发布

拷贝动态库到可执行程序目录或者系统system32目录

mysqlcppconn.dll

libmysql.dll


6、其他说明

1)官方的教程 MySQL Connector/C++ Building Windows Applications with Microsoft Visual Studio

2)MySQL Connector C++ 1.1.1 安装后的lib库只能用于vs2008,不能用于vs2010以及更高版本,要想用只能自己下载connector c++源代码(http://dev.mysql.com/downloads/connector/cpp/),用cmake和相关vs编译器进行编译。


读书人网 >VSTS

热点推荐