SPIPlanPtr SPI_prepare_cursor(const char * command, int nargs,
                              Oid * argtypes, int cursorOptions)Note: At present, this section is just taken from PostgreSQL documentation and is subject to revision for Postgres-XC.
   SPI_prepare_cursor is identical to
   SPI_prepare, except that it also allows specification
   of the planner's "cursor options" parameter.  This is a bit mask
   having the values shown in nodes/parsenodes.h
   for the options field of DeclareCursorStmt.
   SPI_prepare always takes the cursor options as zero.
  
Note: At present, this section is just taken from PostgreSQL documentation and is subject to revision for Postgres-XC.
command string
number of input parameters ($1, $2, etc.)
pointer to an array containing the OIDs of the data types of the parameters
integer bit mask of cursor options; zero produces default behavior
Note: At present, this section is just taken from PostgreSQL documentation and is subject to revision for Postgres-XC.
   SPI_prepare_cursor has the same return conventions as
   SPI_prepare.
  
Note: At present, this section is just taken from PostgreSQL documentation and is subject to revision for Postgres-XC.
Useful bits to set in cursorOptions include CURSOR_OPT_SCROLL, CURSOR_OPT_NO_SCROLL, CURSOR_OPT_FAST_PLAN, CURSOR_OPT_GENERIC_PLAN, and CURSOR_OPT_CUSTOM_PLAN. Note in particular that CURSOR_OPT_HOLD is ignored.