ESQL/C and ESQL/COBOL Usage

SQL DECLARE syntax in ESQL/C and ESQL/COBOL has been extended to include the RELEASE_LOCKS_ON_CLOSE keyword.

EXEC SQL DECLARE cursor_name 
	[SEMI_SENSITIVE | INSENSITIVE] 
	[SCROLL | NOSCROLL] 
	[RELEASE_LOCKS_ON_CLOSE]
	CURSOR FOR “select stmt”
	[for {read only | update [ of column_name_list]}]
You cannot use RELEASE_LOCKS_ON_CLOSE with an UPDATE clause except in this form:
EXEC SQL declare cursor c1 release_locks_on_close
   cursor for select * from T for update of col_a

In this case, RELEASE_LOCKS_ON_CLOSE is ignored.

cpre and cobpre cannot generate these ct_cursor() options:
  • CS_CUR_RELLOCKS_ONCLOSE | CS_READ_ONLY

  • CS_CUR_RELLOCKS_ONCLOSE | CS_FOR_UPDATE

ESQL/C sample code is available in example8.cp; ESQL/COBOL sample code is available in example7.pco.