Qt5 linux 无法连接sqlite

Qt5 linux 无法连接sqlite,第1张

先安装好sqlite,然后去系统软件源中找qt自带的sqlite的驱动安装。

Linux平台下解决Qt5连接mysql数据库的问题:输入sudoapt-getinstalllibqt5sql5-mysql解决,这种方法只能解决Qt是用sudoapt-getinstallqt-sdk命令装的低版本的Qt5(如5、2、x)缺少MySQL驱动问题,如果你的Qt5版本为5、7、X,那么就不能用这种方法解决,请参考下面的方法。

qt中有qtsql模块支持该 *** 作,底层一般都是用驱动插件实现的,利用的是sqlite数据库,相关的类有

qsqldatabase, qsqlquery,qsqlrecord等,谢谢采纳

你这种全字段匹配查询不能这么写的,这种查询叫全文检索,sqlite有现成的全文检索方案,需要在sqlite上做些配置

官方文档上有写的

>

在QT的widget中用tableview显示sqlite数据库表中的内容。

假设有数据库文件testdb,有表table(id integer, name nvarchar(20),age integer),且有数条数据。

首先用QTcreator创建一个基于Widget类的窗口,再拖一个tableview到widget中,保存,然后按照如下方法进行:

1在widgeth中增添头文件:QtSql/qsqlh、QtSql/QsqlDatabase、QtSql/QsqlQuery、QtSql/QsqlQueryModel

2在pro工程文件中添加:QT+=sql

3在widgetcpp中widget的构造函数中添加如下代码:

QsqDatabase db = QsqlDatabase::addDatabase("QSQLITE");

dbsetDatabaseName("testdb");

if(!dbopen())

{

//错误处理

}

static QSqlQueryModel model = new QSqlQueryModel(ui->tableview);

model->setQuery(QString("select from table"));

model->setHeaderData(0,Qt::Horizontal,QObject::tr("编号"));

model->setHeaderData(1,Qt::Horizontal,QObject::tr("姓名"));

model->setHeaderData(2,Qt::Horizontal,QObject::tr("年龄"));

ui->tableview->setModel(model);

db->close();

这样之后,table表里的内容就会显示到tableview中了。

以上就是关于Qt5 linux 无法连接sqlite全部的内容,包括:Qt5 linux 无法连接sqlite、QT中如何用界面对数据库的直接 *** 作,包括查询和连接、QT sqlite 模糊查询 表中全部字段数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9403939.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存