您的位置:首页 > 数据库

使用了QSqlDatabase数据库,报错:Driver not loaded

2015-06-09 09:16 357 查看
1.环境

(1)已经安装了sqlite;

(2)qt-opensource-windows-x86-msvc2010_opengl-5.4.0.exe;

(3)使用vs2010来开发。

2.现象

若加入如下代码:

QSqlDatabase
db = QSqlDatabase::addDatabase("QSQLITE");
         db.setDatabaseName("scooters.dat");
         if (!db.open()) {
                   QMessageBox::warning(0,QObject::tr("DatabaseError"),
                            db.lastError().text());
                   returnfalse;
         }
         return
true;
结果:编译通过,运行时报错如下:



3.解决方法
  以下以release为例
(1)去掉Qt5Core.dll即可;(不可取)
(2)在Qt安装路径下找到Qt5Sql.dll和sqldrivers文件夹,添加到运行路径下即可,如图2所示



        图2
 sqldrivers中的文件如下图所示:
 


4.说明
为了使得在开发机器(没有安装vs2010、Qt等)上运行,需要图2中那么多依赖文件且必须有,故方法一不可取
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: