Mysql ConnectC/C++使用
前一阵子搞那个QT发布使用mysql程序的驱动问题搞得头大(实际应该是自己太弱了),弄了几天也没搞定,就放弃是用那个了,泪崩,舍不得。这两天看看connectC/C++的使用方法。
还是老样子,LINUX+QT。
建立一个console程序,测试demo依然脸皮厚的写在了main文件内。PRO文件依然需要加入LIBS += -L /usr/lib/mysql -lmysqlclient -lmysqlpp
下面是ConnectC++ API接口,ConnectC API接口网上的例子好像比较多,头文件是使用mysql.h。自己也用自带的demo测试了下。不得不说,这个没有QT的好用,但是发布程序不用搞driver了,也是蛮爽的。简单使用,方便以后学习。
主要内容如下:
#define MYSQLPP_MYSQL_HEADERS_BURIED//这个必须指定否则可能出现mysql_version.h找不到的情况。
#include <QCoreApplication>
#include<iostream>
#include<mysql++/mysql++.h>
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
const char* server="localhost";
const char* db="mysql";
const char* user="root";
const char* passwd="Aa,,..1234";
mysqlpp::Connection conn(false);
if(conn.connect(db,server,user,passwd))
{
mysqlpp::Query query=conn.query("select host,user,password from user");
if(mysqlpp::StoreQueryResult res=query.store())
{
cout<<"host"<<‘\t‘<<"user"<<‘\t‘<<"password"<<endl;
for(size_t i=0;i<res.num_rows();++i)
{
for(size_t j=0;j<res.num_fields();++j)
{
cout<<res[i][j]<<‘\t‘;
if(j==2)
cout<<endl;
}
}
}
else
{
cerr<<"Failed to get Item list:"<<query.error()<<endl;
return 1;
}
return 0;
}
else
{
cerr<<"DB connection failed:"<<conn.error()<<endl;
return 1;
}
return a.exec();
}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。