我用sqlite写了一个程序,但当我运行它时,似乎没有sqlite支持。
下面是QT创建者提供的信息: QSqlDatabase: QSQLITE driver not loaded QSqlDatabase: available drivers:
没有可用的驱动程序!但是在C:\Qt\2010.05\qt\plugins\sqldrivers目录中有sqlite4.dll,sqlowbc4.dll,为什么程序无法检测到驱动程序的位置?我应该用-qt-sql-sqlite选项重新编译Qt4.7吗?这似乎是非常耗时的最后一个解决方案。有什么建议吗?提前谢谢。
发布于 2011-01-06 21:44:34
如果你编译qt时没有启用sql,那么sql就不会工作。我建议你这样做,即使这可能很耗时。如果你需要,这是最好的方式。
发布于 2012-09-19 01:41:14
您需要将qsqlite4.dll文件放入sqldrivers文件夹中
发布于 2011-01-07 06:31:12
你的内置模式是什么--调试还是发布?如果您在调试模式下构建,那么您需要名为sqlite*d*4.dll的SQLite插件的调试版本,而不是sqlite4.dll。
您可以通过设置环境变量QT_DEBUG_PLUGINS=1来打开一些有用的调试信息。如果你这样做,你会得到像这样的东西
QFactoryLoader::QFactoryLoader() looking at "C:/Qt/4.7.0-mingw/plugins/sqldrivers/qsqlite4.dll"
In C:/Qt/4.7.0-mingw/plugins/sqldrivers/qsqlite4.dll:
Plugin uses incompatible Qt library
expected build key "Windows mingw debug full-config", got "Windows mingw release full-config"你知道你需要这个插件的调试版。
此外,如果在原始插件的文件夹(你在问题中给出的那个)中查找插件有问题,你可以在你的应用程序的文件夹中创建sqldrivers文件夹,并将sqlite*.dll插件复制到那里。
https://stackoverflow.com/questions/4611460
复制相似问题