File indexing completed on 2024-06-09 05:02:39

0001 /*
0002     SPDX-FileCopyrightText: 2019 Thomas Baumgart <tbaumgart@kde.org>
0003     SPDX-License-Identifier: GPL-2.0-or-later
0004 */
0005 
0006 #ifndef MYSQLQUERY_H
0007 #define MYSQLQUERY_H
0008 
0009 #include "config-kmymoney.h"
0010 
0011 #if ENABLE_SQLTRACER
0012 
0013 #undef QSqlQuery
0014 
0015 // ----------------------------------------------------------------------------
0016 // QT Includes
0017 
0018 #include <QObject>
0019 #include <QString>
0020 #include <QSqlDatabase>
0021 #include <QSqlQuery>
0022 
0023 // ----------------------------------------------------------------------------
0024 // KDE Includes
0025 
0026 // ----------------------------------------------------------------------------
0027 // Project Includes
0028 
0029 class QSqlResult;
0030 
0031 class KMMSqlQuery : public QSqlQuery
0032 {
0033     static int queryId;
0034 public:
0035     explicit KMMSqlQuery (QSqlResult *r, char *file, int line);
0036     explicit KMMSqlQuery (const QString& query = QString(), QSqlDatabase db = QSqlDatabase());
0037     explicit KMMSqlQuery (QSqlDatabase db);
0038     virtual ~KMMSqlQuery();
0039 
0040     bool exec(const QString &query);
0041     bool exec();
0042     void finish();
0043     bool prepare(const QString& cmd);
0044 
0045 private:
0046     int id;
0047     QString cmd;
0048 };
0049 
0050 #define QSqlQuery KMMSqlQuery
0051 #endif // ENABLE_SQLTRACER
0052 #endif // MYSQLQUERY_H