From 374aedb86ca9ad38f68aa07a96998e8e65bfa86d Mon Sep 17 00:00:00 2001 From: cxl Date: Sun, 23 Mar 2014 15:28:35 +0000 Subject: [PATCH] MySql: now ignoring more resultsets (thanks Klugier) git-svn-id: svn://ultimatepp.org/upp/trunk@7073 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/MySql/MySql.cpp | 5 +++++ uppsrc/Sql/Sqls.h | 3 +++ 2 files changed, 8 insertions(+) diff --git a/uppsrc/MySql/MySql.cpp b/uppsrc/MySql/MySql.cpp index ffb87bfe3..45bfc4378 100644 --- a/uppsrc/MySql/MySql.cpp +++ b/uppsrc/MySql/MySql.cpp @@ -313,6 +313,11 @@ bool MySqlConnection::Execute() { return false; result = mysql_store_result(mysql); rows = (int)mysql_affected_rows(mysql); + + while(mysql_more_results (mysql)) { // Only first resultset is considered, rest is ignored + mysql_next_result (mysql); // This is required to avoid synchronization error on CALL + } + if(result) { int fields = mysql_num_fields(result); info.SetCount(fields); diff --git a/uppsrc/Sql/Sqls.h b/uppsrc/Sql/Sqls.h index d277b5cdd..2a4480b13 100644 --- a/uppsrc/Sql/Sqls.h +++ b/uppsrc/Sql/Sqls.h @@ -454,6 +454,9 @@ class SqlMassInsert { uint64 nulls; Vector value; SqlBool remove; + + rval_default(Row); + Row() {} }; Sql& sql;