关于Qt调用Mysql远程访问服务器Mysql数据库

安装步骤 

1. 安装Qt5.2.0-mingw32 

2. 下载mysql-5.7.25-win32.zip

 关于Qt调用Mysql远程访问服务器Mysql数据库

关于Qt调用Mysql远程访问服务器Mysql数据库

 关于Qt调用Mysql远程访问服务器Mysql数据库

3. 安装mysql

解压即可,直接复制解压文件中lib目录下的libmysql.lib、libmysql.dll两个文件到Qt目录相应目录中(见第二张图)

关于Qt调用Mysql远程访问服务器Mysql数据库

关于Qt调用Mysql远程访问服务器Mysql数据库

4. 编写Qt代码

(服务器配置Mysql请详见我另一篇博客“关于配置python-mysql相关步骤”),新建Qt Console Application,修改.pro和编写主函数.cpp文件

1)在.pro文件添加以下代码

QT       += sql

关于Qt调用Mysql远程访问服务器Mysql数据库

2)编写主函数.cpp文件

#include <QtSql>
#include <iostream>
using namespace std;

int main(void){
    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");

    db.setHostName("服务器ip地址");
    db.setDatabaseName("数据库");
    db.setUserName("用户名");
    db.setPassword("用户密码");
    if(!db.open()) {
        cout<< "error!"<<endl;
    } else {
        cout<< "Open"<<endl;
    }
    QSqlQuery query(db);
    query.exec("select * from user;");

    while(query.next ()) {
        cout<<"id:"<<query.value("id").toString().toStdString().data()<<" name:"<<query.value("name").toString().toStdString().data()<<" book:"<<query.value("book").toString().toStdString().data()<<endl;
    }
    return 0;
}

 5. 注意(意外收获)

1)query.value("id").toString()转化得到QString类型的数据

2)QString经过.toStdString().data()转化可得到string类型,可以通过cout输出

参考资料

https://www.jianshu.com/p/beffa4d3246c