From 03b4ef9d1f14871e5509f32bbc8207a79e5c2cf8 Mon Sep 17 00:00:00 2001 From: Martin Kleusberg Date: Fri, 6 Feb 2015 14:36:53 +0100 Subject: [PATCH] Further improve 408fbcf8b422ba443d01780c103354d8a16468b7 --- src/sqlitedb.cpp | 13 +++++++------ src/sqlitedb.h | 12 ++++++------ src/sqlitetablemodel.cpp | 2 +- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/sqlitedb.cpp b/src/sqlitedb.cpp index 343a912f..cd4dbb88 100644 --- a/src/sqlitedb.cpp +++ b/src/sqlitedb.cpp @@ -1,4 +1,5 @@ #include "sqlitedb.h" +#include "sqlite.h" #include "sqlitetablemodel.h" #include "CipherDialog.h" @@ -577,7 +578,7 @@ bool DBBrowserDB::executeMultiSQL(const QString& statement, bool dirty, bool log return true; } -bool DBBrowserDB::getRow(const QString& sTableName, sqlite3_int64 rowid, QList& rowdata) +bool DBBrowserDB::getRow(const QString& sTableName, int64_t rowid, QList& rowdata) { QString sQuery = QString("SELECT * FROM `%1` WHERE `%2`=%3;").arg(sTableName).arg(getObjectByName(sTableName).table.rowidColumn()).arg(rowid); QByteArray utf8Query = sQuery.toUtf8(); @@ -624,7 +625,7 @@ int64_t DBBrowserDB::max(const sqlb::Table& t, sqlb::FieldPtr field) const return ret; } -QString DBBrowserDB::emptyInsertStmt(const sqlb::Table& t, sqlite3_int64 pk_value) const +QString DBBrowserDB::emptyInsertStmt(const sqlb::Table& t, int64_t pk_value) const { QString stmt = QString("INSERT INTO `%1`").arg(t.name()); @@ -688,7 +689,7 @@ QString DBBrowserDB::emptyInsertStmt(const sqlb::Table& t, sqlite3_int64 pk_valu return stmt; } -long DBBrowserDB::addRecord(const QString& sTableName) +int64_t DBBrowserDB::addRecord(const QString& sTableName) { char *errmsg; if (!isOpen()) return false; @@ -698,7 +699,7 @@ long DBBrowserDB::addRecord(const QString& sTableName) // For tables without rowid we have to set the primary key by ourselves. We do so by querying for the largest value in the PK column // and adding one to it. QString sInsertstmt; - long pk_value; + int64_t pk_value; if(table.isWithoutRowidTable()) { SqliteTableModel m(this, this); @@ -726,7 +727,7 @@ long DBBrowserDB::addRecord(const QString& sTableName) } } -bool DBBrowserDB::deleteRecord(const QString& table, sqlite3_int64 rowid) +bool DBBrowserDB::deleteRecord(const QString& table, int64_t rowid) { char * errmsg; if (!isOpen()) return false; @@ -749,7 +750,7 @@ bool DBBrowserDB::deleteRecord(const QString& table, sqlite3_int64 rowid) return ok; } -bool DBBrowserDB::updateRecord(const QString& table, const QString& column, sqlite3_int64 row, const QByteArray& value) +bool DBBrowserDB::updateRecord(const QString& table, const QString& column, int64_t row, const QByteArray& value) { if (!isOpen()) return false; diff --git a/src/sqlitedb.h b/src/sqlitedb.h index ecd6b305..bf57812c 100644 --- a/src/sqlitedb.h +++ b/src/sqlitedb.h @@ -2,12 +2,12 @@ #define SQLITEDB_H #include "sqlitetypes.h" -#include "sqlite.h" #include #include #include +class sqlite3; class CipherDialog; enum @@ -66,7 +66,7 @@ public: * @param rowdata A list of QByteArray containing the row data. * @return true if statement execution was ok, else false. */ - bool getRow(const QString& sTableName, sqlite3_int64 rowid, QList& rowdata); + bool getRow(const QString& sTableName, int64_t rowid, QList& rowdata); /** * @brief max Queries the table t for the max value of field. @@ -77,16 +77,16 @@ public: int64_t max(const sqlb::Table& t, sqlb::FieldPtr field) const; void updateSchema(); - long addRecord(const QString& sTableName); + int64_t addRecord(const QString& sTableName); /** * @brief Creates an empty insert statement. * @param pk_value This optional parameter can be used to manually set a specific value for the primary key column * @return An sqlite conform INSERT INTO statement with empty values. (NULL,'',0) */ - QString emptyInsertStmt(const sqlb::Table& t, sqlite3_int64 pk_value = -1) const; - bool deleteRecord(const QString& table, sqlite3_int64 rowid); - bool updateRecord(const QString& table, const QString& column, sqlite3_int64 row, const QByteArray& value); + QString emptyInsertStmt(const sqlb::Table& t, int64_t pk_value = -1) const; + bool deleteRecord(const QString& table, int64_t rowid); + bool updateRecord(const QString& table, const QString& column, int64_t row, const QByteArray& value); bool createTable(const QString& name, const sqlb::FieldVector& structure); bool renameTable(const QString& from_table, const QString& to_table); diff --git a/src/sqlitetablemodel.cpp b/src/sqlitetablemodel.cpp index e50891be..e33342ba 100644 --- a/src/sqlitetablemodel.cpp +++ b/src/sqlitetablemodel.cpp @@ -320,7 +320,7 @@ bool SqliteTableModel::insertRows(int row, int count, const QModelIndex& parent) for(int i=row; i < row + count; ++i) { - int rowid = m_db->addRecord(m_sTable); + qint64 rowid = m_db->addRecord(m_sTable); if(rowid < 0) { endInsertRows();