This commit is contained in:
aozhiwei 2018-11-24 17:15:00 +08:00
parent e90d758f5e
commit 943b528893
2 changed files with 9 additions and 9 deletions

View File

@ -30,7 +30,7 @@ struct AsyncQueryRequest
std::string sql;
#if 1
std::string _sql_fmt;
std::initializer_list<a8::XValue> _sql_params;
std::vector<a8::XValue> _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<a8::XValue> _sql_params;
std::vector<a8::XValue> _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<a8::XValue>& args,
a8::XObject& conn_info, const char* querystr, std::vector<a8::XValue>& 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<a8::XValue> args,
void DBPool::ExecAsyncQuery(a8::XObject conn_info, const char* querystr, std::vector<a8::XValue> 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<a8::XValue> args,
void DBPool::ExecAsyncScript(a8::XObject conn_info, const char* querystr, std::vector<a8::XValue> 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);

View File

@ -17,10 +17,10 @@ class DBPool : public a8::Singleton<DBPool>
void SetThreadNum(int thread_num);
//执行异步并行查询
void ExecAsyncQuery(a8::XObject conn_info, const char* querystr, std::initializer_list<a8::XValue> args,
void ExecAsyncQuery(a8::XObject conn_info, const char* querystr, std::vector<a8::XValue> 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<a8::XValue> args,
void ExecAsyncScript(a8::XObject conn_info, const char* querystr, std::vector<a8::XValue> args,
a8::XParams param, AsyncDBOnOkFunc on_ok, AsyncDBOnErrorFunc on_error, long long hash_code);
private: