From e1315807021fe4f21d145195b012a9d0cb3feb2e Mon Sep 17 00:00:00 2001 From: dec05eba <0xdec05eba@gmail.com> Date: Mon, 21 May 2018 02:36:19 +0200 Subject: Add sql debug, fix action counter in request wrong number --- src/sql/Sql.cpp | 17 +++++++++++++++++ src/sql/SqlExec.cpp | 11 +++++++++++ src/sql/SqlQuery.cpp | 11 +++++++++++ 3 files changed, 39 insertions(+) (limited to 'src/sql') diff --git a/src/sql/Sql.cpp b/src/sql/Sql.cpp index 4e65ddb..0bfbbe6 100644 --- a/src/sql/Sql.cpp +++ b/src/sql/Sql.cpp @@ -21,6 +21,23 @@ namespace odhtdb return SQLITE_OK; } + std::string SqlArg::toString() const + { + switch(type) + { + case Type::DATA_VIEW: + return std::string((const char*)dataView.data, dataView.size); + case Type::INT: + return std::to_string(integer); + case Type::INT64: + return std::to_string(integer64); + case Type::UINT64: // TODO: Find a way to use u64 in sqlite + return std::to_string(uinteger64); + default: + return ""; + } + } + SqlTransaction::SqlTransaction(sqlite3 *_db) : db(_db) { diff --git a/src/sql/SqlExec.cpp b/src/sql/SqlExec.cpp index bdb0fbd..52d953f 100644 --- a/src/sql/SqlExec.cpp +++ b/src/sql/SqlExec.cpp @@ -1,4 +1,5 @@ #include "../../include/odhtdb/sql/SqlExec.hpp" +#include "../../include/odhtdb/Log.hpp" #include namespace odhtdb @@ -39,6 +40,16 @@ namespace odhtdb throw SqlExecException(errMsg); } +#ifdef ODHTDB_SQL_DEBUG + Log::debug("Executing sql exec: %s; args(%u): ", sqlite3_sql(stmt), args.size()); + usize i = 0; + for(const SqlArg &arg : args) + { + Log::debug("arg(%u): %s", i, arg.toString().c_str()); + ++i; + } +#endif + int paramIndex = 1; for(const SqlArg &arg : args) { diff --git a/src/sql/SqlQuery.cpp b/src/sql/SqlQuery.cpp index 6201332..24694db 100644 --- a/src/sql/SqlQuery.cpp +++ b/src/sql/SqlQuery.cpp @@ -1,4 +1,5 @@ #include "../../include/odhtdb/sql/SqlQuery.hpp" +#include "../../include/odhtdb/Log.hpp" #include namespace odhtdb @@ -29,6 +30,16 @@ namespace odhtdb throw SqlQueryException(errMsg); } +#ifdef ODHTDB_SQL_DEBUG + Log::debug("Executing sql query: %s; args(%u): ", sql, args.size()); + usize i = 0; + for(const SqlArg &arg : args) + { + Log::debug("arg(%u): %s", i, arg.toString().c_str()); + ++i; + } +#endif + int paramIndex = 1; for(const SqlArg &arg : args) { -- cgit v1.2.3