|
|
The DISCONNECT statement terminates a connection with a DBEnvironment
or terminates all DBEnvironment connections established within an
application or an ISQL session.
ISQL or Application Programs
DISCONNECT {'ConnectionName'
'DBEnvironmentName'
:HostVariable
ALL
CURRENT }
- ConnectionName
is a string literal identifying the name associated with this
connection. ConnectionName must be unique for each
DBEnvironment connection within an application (or ISQL).
ConnectionName cannot exceed 128 bytes.
- 'DBEnvironmentName'
is the DBEnvironment to which you have connected to using a
CONNECT TO 'DBEnvironmentName' statement.
- HostVariable
is a character string host variable containing the
ConnectionName associated with this connection.
- ALL
specifies that all DBEnvironment connections in effect (for an
application or an ISQL session) are to be terminated.
- CURRENT
specifies that the current connection is to be terminated.
Within an application (or ISQL), the current connection to
a DBEnvironment is set by the most recent statement that connects
to or sets the connection to the DBEnvironment. If there is no current
connection in effect, an error is generated.
If a ConnectionName refers to a DBEnvironment that
is not the one associated with the current connection, the specified
connection is terminated, and the context of the currently connected
DBEnvironment remains unchanged.
Any active transaction associated with a connection is rolled back
before the connection is terminated.
No stored section is created for the DISCONNECT statement.
DISCONNECT cannot be used with the PREPARE or
EXECUTE IMMEDIATE statements.
An active transaction is not required to execute a
DISCONNECT statement. An automatic transaction will
not be started when executing a DISCONNECT
statement.
Any connection name associated with a disconnected
connection can be reused.
A DISCONNECT CURRENT statement is equivalent to a
RELEASE statement.
Following a RELEASE or DISCONNECT CURRENT command,
there is no current connection until a SET CONNECTION command
is used to set the current connection to another existing connection,
or a new connection is established by using the CONNECT,
START DBE, START DBE NEW, or START DBE NEW LOG
commands.
You do not need authorization to use the DISCONNECT statement.
Connect three times to PartsDBE and once to SalesDBE:
CONNECT TO :PartsDBE AS 'Parts1'
CONNECT TO :PartsDBE AS 'Parts2'
CONNECT TO :PartsDBE AS 'Parts3'
CONNECT TO :SalesDBE AS 'Sales1'
.
.
.
Terminate the connection associated with connection name Parts1:
DISCONNECT 'Parts1'
Terminate the connection associated with the most recently
connected DBEnvironment (the current connection). Following the
execution of this statement, SalesDBE is no longer connected, and
no current connection exists:
DISCONNECT CURRENT
Note that another DISCONNECT CURRENT statement at this point would
generate an error. Also any SQL statement that operates on a transaction will
fail since there is no current connection and therefore no current transaction.
Set the current connection to Parts3:
SET CONNECTION 'Parts3'
Terminate the connection associated with the most recently
connected DBE (the current connection). Following the execution
of this statement, the Parts3 connection to PartsDBE no longer exists,
and no current connection exists:
DISCONNECT CURRENT
Terminate all established connections. Following this statement,
the Parts2 connection to PartsDBE no longer exists:
DISCONNECT ALL
|