Begin sort: statement implementation, use bindvalues in all search filters, gui: save current scale

Esse commit está contido em:
2019-04-25 10:27:54 +02:00
commit 569d8c4138
4 arquivos alterados com 163 adições e 194 exclusões

Ver arquivo

@ -1,6 +1,7 @@
#ifndef SQLITESEARCH_H
#define SQLITESEARCH_H
#include <QSqlDatabase>
#include <QPair>
#include "searchresult.h"
class SqliteSearch
@ -18,16 +19,18 @@ class SqliteSearch
}
};
private:
QSqlDatabase *db;
QVector<SqliteSearch::Token> tokenize(QString expression);
QString createSql(const Token &token);
QString makeSql(const QVector<Token> &tokens);
bool checkParanthesis(QString expression);
public:
SqliteSearch(QSqlDatabase &db);
QVector<SearchResult> search(const QString &query);
static bool checkParanthesis(QString expression);
private:
QSqlDatabase *db;
QVector<Token> tokenize(QString expression);
QSqlQuery makeSqlQuery(const QVector<Token> &tokens);
QString fieldToColumn(QString col);
QPair<QString, QVector<QString>> createSql(const Token &token);
QString createSortSql(const SqliteSearch::Token &token);
};
#endif // SQLITESEARCH_H