Starting from MySQL 5.0.2, the server cursor is implemented through the mysql_stmt_attr_set () c api function. The server cursor allows the server to generate a result set, but does not transmit it to the client unless the client requests these rows. For example, if the client executes a query but is only interested in 1st rows, the remaining rows will not be transmitted.
The cursor is read-only and cannot be used to update rows.
Update where current of and delete where current of are not implemented because the updatable cursor is not supported.
The cursor cannot be kept (open again after submission ).
The cursor is insensitive.
The cursor cannot be rolled.
The cursor is not named. The statement handler acts as the cursor ID.
Only one cursor can be opened for each pre-processing statement. If you need multiple cursors, you must process multiple statements.
If the statement is not supported in Preprocessing mode, you cannot use the cursor on the statement that generates the result set. Including check tables, handler read, and show binlog events statements.