Add a query count method to SQLHelper
This commit is contained in:
@@ -3,9 +3,11 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#include "SQLHelper.h"
|
#include "SQLHelper.h"
|
||||||
|
#include <QSqlQuery>
|
||||||
#include <QSqlDatabase>
|
#include <QSqlDatabase>
|
||||||
#include <QSqlQuery>
|
#include <QSqlQuery>
|
||||||
|
#include <QSqlRecord>
|
||||||
|
#include <qdebug.h>
|
||||||
QSqlDatabase* SQLHelper::defaultDatabase= nullptr;
|
QSqlDatabase* SQLHelper::defaultDatabase= nullptr;
|
||||||
QHash<QString,CenterAlignSqlTableModel*>* SQLHelper::cache= new QHash<QString,CenterAlignSqlTableModel*>;
|
QHash<QString,CenterAlignSqlTableModel*>* SQLHelper::cache= new QHash<QString,CenterAlignSqlTableModel*>;
|
||||||
bool SQLHelper::Open() {
|
bool SQLHelper::Open() {
|
||||||
@@ -36,6 +38,8 @@ void SQLHelper::Close() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
QSqlTableModel* SQLHelper::getTable(const QString &tableName) {
|
QSqlTableModel* SQLHelper::getTable(const QString &tableName) {
|
||||||
if (cache->contains(tableName)) return (*cache)[tableName];
|
if (cache->contains(tableName)) return (*cache)[tableName];
|
||||||
CenterAlignSqlTableModel *model = new CenterAlignSqlTableModel(nullptr,*defaultDatabase);
|
CenterAlignSqlTableModel *model = new CenterAlignSqlTableModel(nullptr,*defaultDatabase);
|
||||||
@@ -43,3 +47,13 @@ QSqlTableModel* SQLHelper::getTable(const QString &tableName) {
|
|||||||
(*cache)[tableName] = model;
|
(*cache)[tableName] = model;
|
||||||
return (*cache)[tableName];
|
return (*cache)[tableName];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int SQLHelper::QueryCount(QString sql) {
|
||||||
|
QSqlQuery query(*defaultDatabase);
|
||||||
|
if (query.exec(sql))
|
||||||
|
{
|
||||||
|
query.last();
|
||||||
|
return query.at()+1;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
class QSqlDatabase;
|
class QSqlDatabase;
|
||||||
#include "CenterAlignSqlTableModel.h"
|
#include "CenterAlignSqlTableModel.h"
|
||||||
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QHash>
|
#include <QHash>
|
||||||
|
|
||||||
@@ -15,6 +16,7 @@ public:
|
|||||||
static bool Open();
|
static bool Open();
|
||||||
static bool Open(QSqlDatabase* base);
|
static bool Open(QSqlDatabase* base);
|
||||||
static void Close();
|
static void Close();
|
||||||
|
static int QueryCount(QString sql);
|
||||||
static QSqlTableModel* getTable(const QString & tableName);
|
static QSqlTableModel* getTable(const QString & tableName);
|
||||||
private:
|
private:
|
||||||
static QSqlDatabase* defaultDatabase;
|
static QSqlDatabase* defaultDatabase;
|
||||||
|
|||||||
Reference in New Issue
Block a user