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();
}

 

转载于:https://www.cnblogs.com/hanbim/p/4225325.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值