From: Myun2 Date: Sun, 8 Apr 2012 21:56:36 +0000 (+0900) Subject: db/sqlite3.hpp: 作りかけ X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=f470a1b6cda50ae3f62a26e2cd4339a283359a89;p=roast%2Froast.git db/sqlite3.hpp: 作りかけ --- diff --git a/roast/include/roast/db/sqlite3.hpp b/roast/include/roast/db/sqlite3.hpp index bda242dc..d068de3b 100644 --- a/roast/include/roast/db/sqlite3.hpp +++ b/roast/include/roast/db/sqlite3.hpp @@ -6,7 +6,7 @@ #ifndef __SFJP_ROAST__db__sqlite3_HPP__ #define __SFJP_ROAST__db__sqlite3_HPP__ -#include "sqlite3.h" +#include "sqlite3.h" // Require External Library #include "roast/db/base.hpp" #define ROAST_DB_SQLITE_MEMORY_DB ":memory:" @@ -21,11 +21,28 @@ namespace roast class driver : public driver_base { + private: + // SQL Select Callback. (in ROW) + static int _select_callback(void *p_result, + int column_count, char **values, char **colunm_name) + { + select_result &result = *((select_result*)p_result); + select_row rows; + + for(int i=0; i + void exec(const &_Command cmd, exec_callback callback) + { + + } + template <> + void exec(const char* cmd, exec_callback callback) + { + bool ret = true; + + char *szErrMsg = NULL; + if ( ::sqlite3_exec(m_device, cmd, _select_callback, &result, &szErrMsg) != SQLITE_OK ) + ret = false; + + if ( szErrMsg != NULL ) + ::sqlite3_free(szErrMsg); + + return ret; + } }; //////////////////////////////////////////////////////////////////////////////////////