mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
A fix and a test case for Bug#24179 "select b into $var" fails with
--cursor_protocol": fix a misleading error message in case of SELECT .. INTO. sql/sql_class.cc: Implement select_result::check_simple_select hierarchy to support correct error messages in case of SELECT .. INTO and C API cursors. sql/sql_class.h: Set the error message inside the function that checks for the error condition (simple_select, renamed to check_simple_select). sql/sql_prepare.cc: Use a new method that now sets the error. tests/mysql_client_test.c: Add a test case for Bug#24179 "select b into $var" fails with --cursor_protocol" (check for the right error message and error code).
This commit is contained in:
@ -885,6 +885,13 @@ void select_result::cleanup()
|
||||
/* do nothing */
|
||||
}
|
||||
|
||||
bool select_result::check_simple_select() const
|
||||
{
|
||||
my_error(ER_SP_BAD_CURSOR_QUERY, MYF(0));
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
static String default_line_term("\n",default_charset_info);
|
||||
static String default_escaped("\\",default_charset_info);
|
||||
static String default_field_term("\t",default_charset_info);
|
||||
@ -1553,6 +1560,13 @@ int select_dumpvar::prepare(List<Item> &list, SELECT_LEX_UNIT *u)
|
||||
}
|
||||
|
||||
|
||||
bool select_dumpvar::check_simple_select() const
|
||||
{
|
||||
my_error(ER_SP_BAD_CURSOR_SELECT, MYF(0));
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
void select_dumpvar::cleanup()
|
||||
{
|
||||
vars.empty();
|
||||
|
Reference in New Issue
Block a user