首先从官网下载“mysql++-3.1.0.tar.gz”源码包,解压后发现里面有“vc2003”、“vc2005”、“vc2008”等3个文件夹,根据你的VS版本去打开里面的工程来编译mysql++,编译前查看一下工程属性(解决方案下有许多工程,只编译“mysqlpp”即可,其他都是示例),里面的头文件和链接库的包含路径默认是MySQL5.1,如果你安装的是其他版本就要改掉。编译后在debug或release文件夹下就生成了一个动态库和一个静态库,你可以新建一个路径存放这些库文件然后添加入Path变量,到此成功了99%,最后双击“install.hta”来安装,安装后发现安装路径下有一个include文件夹,里面是mysql++的头文件,有了include和lib,就可以写一段测试代码了:
mysqlpp::Connection _conn;
_conn.set_option(new mysqlpp::SetCharsetNameOption("GBK"));//设置中文字符集
_conn.set_option(new mysqlpp::MultiStatementsOption(true));
if (_conn.connect("test","localhost","root","sa",3306))
int _id;
std::string _name;
mysqlpp::Query _query = _conn.query("select * from myTable");
mysqlpp::StoreQueryResult _rs = _query.store();
for (uint i=0;i < _rs.num_rows();i++)
_id = atoi(_rs[i][0].c_str());
if (_rs[i][1] == mysqlpp::null)
_name = "NULL";
else
_name = _rs[i][1].c_str();
printf("%d %s\n",_id,_name.c_str());
_conn.disconnect();
运行结果:
1 tom
2 NULL
3 张三
如果链接不成功或提示找不到dll就要看一下刚才生成的库文件是否被正确引用了。
--转自