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

}

}

效果如下:

时间: 2024-10-11 01:59:17

Qt如何连接MySQL的相关文章

Qt 无法连接mysql数据库的问题

错误信息: QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL QMYSQL3 QODBC 找了很多问题:从mysql server中复制libmysql.dll行不通. 最后发现: 去mysql官网下个mysql-connector-c-6.1.6-win32.msi装一下, 装好后安装目录中找到libmysql.dll,跳到第4步就行了,或者复制到*\Qt\

Qt 5.4.1下编译MySQL驱动,连接MySQL数据库

Qt安装在D:\Qt目录,Qt 5.4.1下连接MySQL数据库,发现会出现以下错误 QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL QMYSQL3 QODBC 到D:\Qt\Qt5.4.1\5.4\mingw491_32\plugins\sqldrivers目录下看看,发现是有mysql驱动的 Google了一下,据说是该驱动所满足的依赖性,不满足,需要重

毕业设计之qt连接MySQL

//连接MySQL数据库的函数 bool LoginView::createConnection() {     QSqlDatabase t_db = QSqlDatabase::addDatabase("QMYSQL");     t_db.setHostName("localhost");     t_db.setDatabaseName("chatsystem");     t_db.setUserName("root"

QT连接MySQL

Qt 连接MySQL 是件很简单的事,但也有可能很不简单. QT给我们的提示只有 QMYSQL driver not loaded,让我们毫无头绪.访问其他数据库也可以用同样的方法解决. Qt 访问 MySQL 需要 2 个动态链接库文件,一个是 Qt 自己的 MySQL 驱动插件,另一个是 MySQL 提供的动态链接库,缺一不可.在程序里指定要访问的数据库为 MySQL,Qt 会自动的加载 MySQL 驱动插件,其实现依赖于MySQL 的动态链接库访问 MySQL. #include <ios

Ubuntu12.04下Qt连接MySQL数据库

本文介绍在Ubuntu12.04 (64 bit) 下使用Qt 4.8.2连接MySQL(Ver 14.14 Distrib 5.5.43)数据库. 1.安装 Qt 和 MySQL 若未安装以上软件,可参考我的博客安装. 安装Qt:Ubuntu12.04下安装Qt4总结 --> http://www.cnblogs.com/gaohongchen01/p/4204860.html 安装MySQL:Ubuntu12.04下安装Apache+PHP+MySQL --> http://www.cnb

QT连接MYSQL数据库教程

最近购买了阿里云Linux服务器,处于自学需要安装了MYSQL5.7. 准备用QT开发个小工具,在使用QT提供的标准类连接MYSQL库的时候一直爆出无法加载MYSQL驱动的问题. 软件环境是windows10 +Qt4.8.7+mingw+qtcreator,在Qt4这个版本中不包含MYSQL数据的驱动,需要手动编译.网上的其他教程一般是针对MYSQL5.5这个版本,编译的时候需要用到/lib/opt路径下的lib文件(习惯Linux系统路径格式了,windows格式请脑补),经过多次尝试已然无

qt连接mysql报错:QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7

之前使用Qt连接mysql数据库,遇到过这样的报错,后来解决了,但没有记录下来,这次又遇到了,花了好多的精力,这次吸取上次的教训,做一下记录和总结. 报错截图: 编辑背景: Qt5.13.0,编译器是mingw73_64,是64位的. mysql-5.7.27-winx64,也是64位的. 有人说,qt的编译器的位数要和数据库的位数是一致的,我没试过不同位数行不行,反正我的都是64位的. 问题: 使用<QSqlDatabase>库进行mysql的连接操作,出现下面的报错信息,当然别忘了在.pr

Qt5.5连接MySQL

(一)环境 windows下Qt5.5,安装的是MySQL Server 5.5版本. (二)qt连接mysql的原理 qt连接mysql需要两个dll,一个是qt连接mysql的驱动(注意:qt5.5自带这个驱动dll,位于Qt5.5.0\5.5\msvc2013\plugins\sqldrivers下qsqlmysql.dll和qsqlmysqld.dll,如果是qt4则需要下载qt该驱动的源代码自己编译),另一个是mysql自带的libmysql.dll(位于MySQL\MySQL Ser

CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)

用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然. 用ldd命令分析一下,libmysqlclient_r.so.16 => not found ,后明显libmysqlclient_r.so.16 缺少另一个共享库,他们是依赖关系,解决了这个问题qt才能真的连接到mysql数据库.而我的/usr/lib64/下的共享库版本比较高是libmysqlclient.so.18,想到了一个比较投机的想法ln创