diff options
| author | Friedemann Kleint <Friedemann.Kleint@digia.com> | 2013-01-30 10:36:50 +0100 |
|---|---|---|
| committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-02-01 14:13:32 +0100 |
| commit | 1580f558472e2c37936fe817fc546a79a8b0a9a5 (patch) | |
| tree | bcc46ebedcf0c1ffcc94ea02e577029f09039c28 /src/sql/drivers/sqlite2/qsql_sqlite2.cpp | |
| parent | 40eaa7231911c818e1c404c8141188bd0b668d4b (diff) | |
Remove dependency of DB driver headers on qsqlcachedresult_p.h.
Move the QXXResult classes inheriting the private class
QSqlCachedResult from header into the source files for
SQLite, SQLite2, Interbase/Firebird and TDS/Sybase and
Oracle.
Task-number: QTBUG-28088
Change-Id: Ia16d30e442e313c8165282b8a3f012fd95d96759
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Diffstat (limited to 'src/sql/drivers/sqlite2/qsql_sqlite2.cpp')
| -rw-r--r-- | src/sql/drivers/sqlite2/qsql_sqlite2.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/sql/drivers/sqlite2/qsql_sqlite2.cpp b/src/sql/drivers/sqlite2/qsql_sqlite2.cpp index 02e4004901d..2666cefb722 100644 --- a/src/sql/drivers/sqlite2/qsql_sqlite2.cpp +++ b/src/sql/drivers/sqlite2/qsql_sqlite2.cpp @@ -50,6 +50,7 @@ #include <qsqlfield.h> #include <qsqlindex.h> #include <qsqlquery.h> +#include <QtSql/private/qsqlcachedresult_p.h> #include <qstringlist.h> #include <qvector.h> @@ -94,6 +95,30 @@ QSQLite2DriverPrivate::QSQLite2DriverPrivate() : access(0) utf8 = (qstrcmp(sqlite_encoding, "UTF-8") == 0); } +class QSQLite2ResultPrivate; + +class QSQLite2Result : public QSqlCachedResult +{ + friend class QSQLite2Driver; + friend class QSQLite2ResultPrivate; +public: + explicit QSQLite2Result(const QSQLite2Driver* db); + ~QSQLite2Result(); + QVariant handle() const; + +protected: + bool gotoNext(QSqlCachedResult::ValueCache& row, int idx); + bool reset (const QString& query); + int size(); + int numRowsAffected(); + QSqlRecord record() const; + void detachFromResultSet(); + void virtual_hook(int id, void *data); + +private: + QSQLite2ResultPrivate* d; +}; + class QSQLite2ResultPrivate { public: |
