mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
implementation of mysql_stmt_reset client end
include/mysql.h: add mysql_stmt_reset prototype include/mysql_com.h: add COM_STMT_RESET libmysql/libmysql.def: Add mysql_stmt_reset def sql/sql_prepare.cc: Fix selects hang after windows slowdown issue fix (send_fields) sql/sql_parse.cc: Add COM_STMT_RESET sql/mysql_priv.h: add defination of mysql_stmt_reset
This commit is contained in:
@ -3316,6 +3316,7 @@ mysql_stmt_data_seek(MYSQL_STMT *stmt, my_ulonglong row)
|
||||
}
|
||||
else
|
||||
DBUG_PRINT("exit", ("stmt doesn't contain any resultset"));
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
|
||||
@ -3421,6 +3422,28 @@ my_bool STDCALL mysql_stmt_close(MYSQL_STMT *stmt)
|
||||
return stmt_close(stmt, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
Reset the statement buffers in server
|
||||
*/
|
||||
|
||||
my_bool STDCALL mysql_stmt_reset(MYSQL_STMT *stmt)
|
||||
{
|
||||
char buff[MYSQL_STMT_HEADER];
|
||||
MYSQL *mysql;
|
||||
DBUG_ENTER("mysql_stmt_reset");
|
||||
DBUG_ASSERT(stmt != 0);
|
||||
|
||||
mysql= stmt->mysql->last_used_con;
|
||||
int4store(buff, stmt->stmt_id); /* Send stmt id to server */
|
||||
if (advanced_command(mysql, COM_RESET_STMT,buff,MYSQL_STMT_HEADER,0,0,1))
|
||||
{
|
||||
set_stmt_errmsg(stmt, mysql->net.last_error, mysql->net.last_errno,
|
||||
mysql->net.sqlstate);
|
||||
DBUG_RETURN(1);
|
||||
}
|
||||
DBUG_RETURN(0);
|
||||
}
|
||||
|
||||
/*
|
||||
Return statement error code
|
||||
*/
|
||||
|
@ -98,6 +98,7 @@ EXPORTS
|
||||
mysql_stat
|
||||
mysql_stmt_affected_rows
|
||||
mysql_stmt_close
|
||||
mysql_stmt_reset
|
||||
mysql_stmt_data_seek
|
||||
mysql_stmt_errno
|
||||
mysql_stmt_error
|
||||
|
Reference in New Issue
Block a user