您的位置:首页 > 编程语言 > Qt开发

Qt之连接MySQL

2016-10-02 16:32 323 查看
针对Qt之编译MySQL数据库驱动(MSVC)这一节,已经讲述了Qt5.2以及之前的版本针对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";


提示信息如下:

Qt之连接MySQL

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学习的更多知识可以参考:一去、二三里博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  qt5 mysql