When a global object name is referenced in a SQL statement or remote procedure call, database links establish a connection to a session in the remote database on behalf of the local user. The remote connection and session are only created if the connection has not already been established previously for the local user session.
The connections and sessions established to remote databases persist for the duration of the local user's session, unless the application or user explicitly terminates them. Note that when you issue a
SELECT statement across a database link, a transaction lock is placed on the undo segments. To rerelease the segment, you must issue a
Terminating remote connections established using database links is useful for disconnecting high cost connections that are no longer required by the application. You can terminate a remote connection and session using the
ALTER SESSION statement with the
CLOSE DATABASE LINK clause. For example, assume you issue the following transactions:
SELECT * FROM emp@sales; COMMIT;
The following statement terminates the session in the remote database pointed to by the
sales database link:
Note:Before closing a database link, first close all cursors that use the link and then end your current transaction if it uses the link.
See Also:Oracle Database SQL Language Reference for more information about the