DECLARE cursor_name CURSOR [(cursor_formal_parameter[,...])] FOR select_statement
cursor_formal_parameter:
[IN] name type [collate clause]DECLARE cursor_name CURSOR [(cursor_formal_parameter[,...])] FOR select_statement
cursor_formal_parameter:
name type [collate clause]This statement declares a . Multiple cursors may be declared in a , but each cursor in a given block must have a unique name.
select_statement is not executed until the statement is executed. It is important to remember this if the query produces an error, or calls functions which have side effects.
A SELECT associated to a cursor can use variables, but the query itself cannot be a variable, and cannot be dynamically composed. The SELECT statement cannot have an INTO clause.
Cursors must be declared before , but after local variables and .
Cursors can have parameters. This is a non-standard SQL extension. Cursor parameters can appear in any part of the DECLARE CURSOR select_statement where a stored procedure variable is allowed (select list, WHERE, HAVING, LIMIT , and so forth).
The IN qualifier is supported in the cursor_formal_parameter part of the syntax.
The IN qualifier is not supported in the cursor_formal_parameter part of the syntax.
See for an example.
This page is licensed: GPLv2, originally from