summaryrefslogtreecommitdiffstats
path: root/src/sql/drivers/db2/qsql_db2.cpp
diff options
context:
space:
mode:
authorMark Brand <[email protected]>2015-11-23 12:19:25 +0100
committerMark Brand <[email protected]>2015-11-27 12:15:15 +0000
commitd6ecdb434410ffda64058cdb51483786f5af9932 (patch)
tree4ce01725938a7d19b6bb3313492be0cac282d626 /src/sql/drivers/db2/qsql_db2.cpp
parent6333edfdf3a682dfa8f54fe021f9aa55d6c91049 (diff)
qsql: move Q<driver>Result out of header
Leaf result classes do not need to be exposed in the headers. The implementations were inconsistent on this point. Change-Id: I5bd41ae9e77b932f6232218a014400a59f2ef5a0 Reviewed-by: Friedemann Kleint <[email protected]>
Diffstat (limited to 'src/sql/drivers/db2/qsql_db2.cpp')
-rw-r--r--src/sql/drivers/db2/qsql_db2.cpp33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/sql/drivers/db2/qsql_db2.cpp b/src/sql/drivers/db2/qsql_db2.cpp
index dd49963d937..7282d3a6551 100644
--- a/src/sql/drivers/db2/qsql_db2.cpp
+++ b/src/sql/drivers/db2/qsql_db2.cpp
@@ -32,7 +32,6 @@
****************************************************************************/
#include "qsql_db2_p.h"
-#include <QtSql/private/qsqldriver_p.h>
#include <qcoreapplication.h>
#include <qdatetime.h>
#include <qsqlfield.h>
@@ -43,6 +42,8 @@
#include <qvarlengtharray.h>
#include <qvector.h>
#include <QDebug>
+#include <QtSql/private/qsqldriver_p.h>
+#include <QtSql/private/qsqlresult_p.h>
#if defined(Q_CC_BOR)
// DB2's sqlsystm.h (included through sqlcli1.h) defines the SQL_BIGINT_TYPE
@@ -72,6 +73,36 @@ public:
QString user;
};
+class QDB2ResultPrivate;
+
+class QDB2Result: public QSqlResult
+{
+public:
+ QDB2Result(const QDB2Driver *dr, const QDB2DriverPrivate *dp);
+ ~QDB2Result();
+ bool prepare(const QString &query);
+ bool exec();
+ QVariant handle() const;
+
+protected:
+ QVariant data(int field);
+ bool reset (const QString &query);
+ bool fetch(int i);
+ bool fetchNext();
+ bool fetchFirst();
+ bool fetchLast();
+ bool isNull(int i);
+ int size();
+ int numRowsAffected();
+ QSqlRecord record() const;
+ void virtual_hook(int id, void *data);
+ void detachFromResultSet();
+ bool nextResult();
+
+private:
+ QDB2ResultPrivate *d;
+};
+
class QDB2ResultPrivate
{
public: