From 63b2ca0dbdae190941d60a55c9cff99d4a75a0e1 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Mon, 31 May 2021 13:18:17 +0100 Subject: Initial commit of prepstmt, selects, record sets This is full of holes, but all the basics are covered. --- lib/dbConn.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'lib/dbConn.h') diff --git a/lib/dbConn.h b/lib/dbConn.h index 26b9a64..e4b056c 100644 --- a/lib/dbConn.h +++ b/lib/dbConn.h @@ -1,13 +1,27 @@ #ifndef MYGRATE_DBCONN_H #define MYGRATE_DBCONN_H +#include #include #include namespace MyGrate { + class DbPrepStmt { + public: + virtual ~DbPrepStmt() = default; + virtual void execute(const std::initializer_list &) = 0; + virtual std::size_t rows() const = 0; + virtual RecordSetPtr recordSet() = 0; + }; + using DbPrepStmtPtr = std::unique_ptr; + class DbConn { + public: + virtual ~DbConn() = default; virtual void query(const char * const) = 0; virtual void query(const char * const, const std::initializer_list &) = 0; + + virtual DbPrepStmtPtr prepare(const char * const, std::size_t nParams) = 0; }; } -- cgit v1.2.3