From 943b5288934852a36f2120177b67934aed7f677d Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sat, 24 Nov 2018 17:15:00 +0800 Subject: [PATCH] 1 --- cpp/dbpool.cc | 14 +++++++------- cpp/dbpool.h | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cpp/dbpool.cc b/cpp/dbpool.cc index 947ddfb..950e658 100644 --- a/cpp/dbpool.cc +++ b/cpp/dbpool.cc @@ -30,7 +30,7 @@ struct AsyncQueryRequest std::string sql; #if 1 std::string _sql_fmt; - std::initializer_list _sql_params; + std::vector _sql_params; a8::XObject conn_info; #endif a8::XParams param; @@ -48,7 +48,7 @@ struct AsyncQueryNode std::string sql; #if 1 std::string _sql_fmt; - std::initializer_list _sql_params; + std::vector _sql_params; a8::XObject conn_info; #endif AsyncQueryNode* nextnode = nullptr; @@ -224,7 +224,7 @@ private: switch (node->query_type) { case 0: { - int ret = last_query_->ExecQuery(node->sql.c_str(), {}); + int ret = last_query_->ExecQuery(node->_sql_fmt.c_str(), node->_sql_params); if (ret < 0) { MsgQueue::Instance()->PostMsg_r(exec_async_query_msgid, a8::XParams() @@ -253,7 +253,7 @@ private: break; case 1: { - bool ret = last_query_->ExecScript(node->sql.c_str(), {}); + bool ret = last_query_->ExecScript(node->_sql_fmt.c_str(), node->_sql_params); if (!ret) { MsgQueue::Instance()->PostMsg_r(exec_async_query_msgid, a8::XParams() @@ -360,7 +360,7 @@ public: } void InternalExecAsyncSql(int exec_type, - a8::XObject& conn_info, const char* querystr, std::initializer_list& args, + a8::XObject& conn_info, const char* querystr, std::vector& args, a8::XParams& param, AsyncDBOnOkFunc on_ok, AsyncDBOnErrorFunc on_error, long long hash_code) { AsyncQueryRequest* p = new AsyncQueryRequest(); @@ -453,13 +453,13 @@ void DBPool::SetThreadNum(int thread_num) impl_->SetThreadNum(thread_num); } -void DBPool::ExecAsyncQuery(a8::XObject conn_info, const char* querystr, std::initializer_list args, +void DBPool::ExecAsyncQuery(a8::XObject conn_info, const char* querystr, std::vector args, a8::XParams param, AsyncDBOnOkFunc on_ok, AsyncDBOnErrorFunc on_error, long long hash_code) { impl_->InternalExecAsyncSql(0, conn_info, querystr, args, param, on_ok, on_error, hash_code); } -void DBPool::ExecAsyncScript(a8::XObject conn_info, const char* querystr, std::initializer_list args, +void DBPool::ExecAsyncScript(a8::XObject conn_info, const char* querystr, std::vector args, a8::XParams param, AsyncDBOnOkFunc on_ok, AsyncDBOnErrorFunc on_error, long long hash_code) { impl_->InternalExecAsyncSql(1, conn_info, querystr, args, param, on_ok, on_error, hash_code); diff --git a/cpp/dbpool.h b/cpp/dbpool.h index 850ca87..1fe1db7 100644 --- a/cpp/dbpool.h +++ b/cpp/dbpool.h @@ -17,10 +17,10 @@ class DBPool : public a8::Singleton void SetThreadNum(int thread_num); //执行异步并行查询 - void ExecAsyncQuery(a8::XObject conn_info, const char* querystr, std::initializer_list args, + void ExecAsyncQuery(a8::XObject conn_info, const char* querystr, std::vector args, a8::XParams param, AsyncDBOnOkFunc on_ok, AsyncDBOnErrorFunc on_error, long long hash_code); //执行异步并行sql - void ExecAsyncScript(a8::XObject conn_info, const char* querystr, std::initializer_list args, + void ExecAsyncScript(a8::XObject conn_info, const char* querystr, std::vector args, a8::XParams param, AsyncDBOnOkFunc on_ok, AsyncDBOnErrorFunc on_error, long long hash_code); private: