使用 QtSql 真的需要 QApplication

Posted

技术标签:

【中文标题】使用 QtSql 真的需要 QApplication【英文标题】:Is QApplication really required for using QtSql 【发布时间】:2017-10-20 15:50:50 【问题描述】:

看来我需要实例化一个QApplication对象并在其上调用exec以使用QtSql,即建立数据库连接,执行查询等。

我说的对吗?如果是,为什么?

【问题讨论】:

如果您在没有QApplication 的情况下尝试这样做会发生什么? @user0042 该问题的答案可能反映了未定义的行为,因此无论哪种方式都没有意义。 【参考方案1】:

您可能不需要QApplication,如果您没有图形用户界面,您可能只需要使用QCoreApplication

所有 Qt 应用程序都必须有一个 Application 类,来自 manual:

QCoreApplication 包含主事件循环,其中所有事件来自 操作系统(例如,定时器和网络事件)和其他 源被处理和分派。它还处理 应用程序的初始化和完成,以及系统范围 和应用程序范围的设置。

【讨论】:

以上是关于使用 QtSql 真的需要 QApplication的主要内容,如果未能解决你的问题,请参考以下文章

QtSql:绑定不会改变使用 SQLite 的查询

无法使用 QtSQL 编译 Qt 项目(链接器错误)

ImportError 与“导入 PyQt5.QtSql”

QtSql编程RedHat linux系统下oracle数据库中文乱码

QT使用SQLite

PyQt & QtSql 数据库 - 自定义连接和 QSqlTableModel 的问题