Qt 使用QSqlite数据库Release打包问题

250 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

头图

Qt 使用QSqlite数据库Release打包问题

这个问题折腾我一晚上没有睡觉,本来程序就写了限制,每次测试都是需要到虚拟机里测试,测试完了还得重置虚拟机,还偏偏出在Qt的打包编译器上面。感谢博主这篇文章。

解决Qt5.9.5下Release程序报错QSqlDataBase:QSQLite driver not loaded


Qt 使用QSqlite数据库Release打包问题报错内容解决方法闷逼的瞬间最终篇

关键字: Qt数据库sqldriverplugins

报错内容

报错内容如下:

QSqlDatabase: QSQLITE driver not loaded QSqlDatabase: available drivers: QSqlDatabase: an instance of QCoreApplication is required for loading driver plugins QWidget: Must construct a QApplication before a QWidget

用我的Chinese翻译一下

QSQLITE 驱动没有加载

可用的驱动程序

加载驱动程序需要 一个 QCoreApplication 实例

最后这个错误我知道,是我的MessageBox 报错。

解决方法

解决方案也是很简单,就是把驱动换个位置,放到plugins下面就可以了。阿西吧,Qt官方工具看来有点小问题呀,不顾还有可能是跟我们使用有关系,因为我之前用一样的版本和环境写了一个数据库的小软件,没有任何问题。

image-20220301092106713

虽然这样可以解决问题,但是我觉得这是个隐患,应该还是我使用的问题。后面有机会再找找看。

闷逼的瞬间

这个问题真的好头疼呀,现在他又好了,直接打包出来也是可以运行的,天哪,杀了我吧,这咋搞,我都不知道错在哪里。如我有罪,请直接惩罚我,不要拿这种问题来折腾我。

image-20220301104820516

最终篇

这个问题最终也没有折腾出个所以然了,代码改的一大糊涂。本着能跑就不要动的原则,那就暂时先这样。