看到一篇关于Qt使用Sqlite的教程贴, 稍微改了下封装起来
原帖地址: https://www.cnblogs.com/xia-weiwen/archive/2017/05/04/6806709.html
遇到一个头疼的bug, 调试了一个上午
//bug 需要在方法中重新定义, 不然会出现 "Driver not loaded" 的错误
QSqlQuery sql_query;
这个对象要在类成员函数中定义,不能在头文件声明,不然会出现找不到驱动的错误
我也不知道为什么
开始贴代码
文件目录
main.cpp
#include <QtCore/QCoreApplication>
#include "sqlitehelper.h"
#include <QDebug>
#include <QStringList>
#include <QSqlDatabase>
#include <QSqlError>
#include <QSqlQuery>
void dbTest();
void dbTest1();
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
dbTest();
return a.exec();
}
void dbTest()
{
// 枚举可用驱动
qDebug() << QSqlDatabase::drivers();
SqliteHelper sqliteHelper;
sqliteHelper.createDatabase();
sqliteHelper.open();
int ID;
ID = sqliteHelper.getMaxId();
QString cmd;
cmd = QString("INSERT INTO Log VALUES(%1, 0,