Disconnects the specified database.

Syntax

DISCONNECT
  {logical-name | VALUE ( expression ) }
   [ NO-ERROR ]
logical-name
A logical database name. It can be an unquoted string or a quoted string. The logical-name is previously set, at startup or with a CONNECT statement, by using the Logical Database Name (-ld) parameter. If a logical name was not specified using the -ld parameter, then the physical database filename, without the .db suffix, is the default logical name.
VALUE (expression)
A character-string expression that evaluates to a logical database name.
NO-ERROR
The NO-ERROR option is used to prevent the statement from raising ERROR and displaying error messages.

Example

This procedure disconnects the database with logical name mydb:

r-discnt.p

DISCONNECT mydb.

Notes

  • By default, the AVM disconnects all databases at the end of a session. The DISCONNECT statement, which explicitly disconnects a database, does not execute until all active procedures that reference the database end or stop.
  • If a transaction is active for logical-name, DISCONNECT is deferred until the transaction completes or is undone. If a CONNECT statement for the same logical-name database is executed before the same transaction completes or is undone, then the pending CONNECT and DISCONNECT cancel each other and the database remains connected.
  • When the database referred to by logical-name is disconnected, existing aliases for logical-name remain in existence. Later, if you connect to a database with the same logical-name, the same alias is still available.

See also

ALIAS function, CONNECT statement, CONNECTED function, CREATE ALIAS statement, CREATE CALL statement, DATASERVERS function, DBCODEPAGE function, DBCOLLATION function, DBRESTRICTIONS function, DBTYPE function, DBVERSION function, DELETE ALIAS statement, FRAME-DB function, NO-ERROR option, LDBNAME function, PDBNAME function, SDBNAME function