是否可以从带有QSQLite驱动程序的已打开的QSql
Database获取低级sqlite3 *句柄?
我需要在其上调用一些低级sqlite3函数,以便安装自定义SQL函数.
更新:找到解决方案:
Q_DECLARE_METATYPE(sqlite3*) sqlite* sqlite_handle = database.driver()->handle().value<sqlite3*>();
解决方法
在我的情况下(qt5,sqlite3)你必须这样做.如果您不包含Q_DECLARE_OPAQUE_POINTER(),则会收到错误消息.
Q_DECLARE_OPAQUE_POINTER(sqlite3*) Q_DECLARE_METATYPE(sqlite3*) sqlite* sqlite_handle = database.driver()->handle().value<sqlite3*>();