The CLOSE command closes an open cursor and frees the resources it was using. Cursors should always be closed after they are no longer needed. Once a cursor is closed, further operations are not allowed on it.
Note: Executing a COMMIT or ROLLBACK terminates the current transaction, closing all open cursors.
The following example opens a transaction, declares the cur_publishers cursor, and closes it:
booktown=# BEGIN; BEGIN booktown=# DECLARE cur_publishers CURSOR FOR SELECT * FROM publishers; SELECT booktown=# CLOSE cur_publishers; CLOSE