QSqlDatabase: QSQLITE driver not loaded 问题,网上方法都使用过,无法解决.求大伙帮助,多谢

时间:2021-12-14 01:39:55
兄弟,求助。我使得的是QT5.3.2,简单写一个数据库程序。
源码如下:
#include "zhao1.h"
#include <QtWidgets/QApplication>
#include <QtCore/QCoreApplication>
#include <QtSql/QtSql>
#include<iostream>
using namespace std;
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
QCoreApplication::addLibraryPath("D:\qt-test\zhao1\Win32\Debug\sqldrivers");
    cout<<"Hello"<<endl;

    QSqlDatabase db =  QSqlDatabase::addDatabase("QSQLITE","Test");

    qDebug() << QSqlDatabase::drivers();

    cout<<"Database Added"<<endl;

    db.setDatabaseName("D:\\sqlite\\fileName.db"); 
    cout<<"Database is set"<<endl;

    //db.open(); 

    return a.exec();
}
运行提示:
QSqlDatabase: QSQLITE driver not loaded
QSqlDatabase: available drivers:
在可执行同路径下已经放了sqldrivers目录,platforms目录,imageformats和Qt5Sqld.dll
系统环境path变量设置了D:\Myspace\Qt5.3.2\5.3\msvc2010_opengl\bin,用户变量新增了QTLIB = D:\Myspace\Qt5.3.2\5.3\msvc2010_opengl\bin
网上所有方法都使用过,无法解决。
联系:coolstanny@163.com

1 个解决方案

#1


[一般情况是将sqldrivers目录直接拷贝到可以执行程序目录下就行,如果这种方式不行就直接关闭VS,并将程序的.vcxproj.user和.VC.db文件都删除,再启动项目进行重新编译。
本人也遇到了该问题,搞了很久,后面就是通过这种方式解决的。]

#1


[一般情况是将sqldrivers目录直接拷贝到可以执行程序目录下就行,如果这种方式不行就直接关闭VS,并将程序的.vcxproj.user和.VC.db文件都删除,再启动项目进行重新编译。
本人也遇到了该问题,搞了很久,后面就是通过这种方式解决的。]