Qt如何连接MySQL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt如何连接MySQL相关的知识,希望对你有一定的参考价值。

Qt如何利用MySQL连接远程数据库?
 
代码如下:
 
//输出可用数据库
qDebug()<<"available drivers:";
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
    qDebug()<<driver;
 
//打开mysql
QSqlDatabase data_base = QSqlDatabase::addDatabase("QMYSQL");
data_base.setHostName("10.0.31.41");  //设置主机地址
data_base.setPort(3309);  //设置端口
data_base.setDatabaseName("gv_local");  //设置数据库名称
data_base.setUserName("root");  //设置用户名
data_base.setPassword("root123");  //设置密码
if(!data_base.open())
    qDebug()<<"failed to connect to mysql";
else
    qDebug()<<"success";
 
提示信息如下:
 
技术分享
 
MySQL驱动加载失败,如何解决?
 
解决办法:
    将MySQL安装目录下的libmysql.dll拷贝到Qt安装目录下的bin目录中即可。
技术分享
 
测试:
 
QString select_all_sql = "select * from gv_alarm_info";
 
//查询所有数据
QSqlQuery sql_query; 
sql_query.prepare(select_all_sql);
if(!sql_query.exec())
{
    qDebug()<<sql_query.lastError();
}
else
{
    while(sql_query.next())
    {
        int id = sql_query.value(0).toInt();
        QString templ_name = sql_query.value(2).toString();
        qDebug()<<QString("Id:%1     Templ Name:%2").arg(id).arg(templ_name);
    }
}
 
效果如下:
 
技术分享

 

以上是关于Qt如何连接MySQL的主要内容,如果未能解决你的问题,请参考以下文章

qt发布程序后在其他电脑无法连接mysql数据库的解决方案

连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段

QT连接Mysql数据库(详细成功版)

QT 实用代码片段

如何在 Qt 应用程序中连接到 MySQL 服务器

Qt 连接MySQL数据库(很多相关文章)