Skip to main content

DETACH DATABASE

The DETACH DATABASE statement removes a previously attached database from the current connection. After detaching, tables in that database are no longer accessible through the schema name.

Syntax

DETACH [DATABASE] schema-name;

Description

DETACH closes the connection to the attached database identified by schema-name and frees its resources. Any subsequent references to schema-name.table-name will fail.

Clauses

ClauseDescription
DATABASEOptional keyword. Has no effect on behavior.
schema-nameThe schema name assigned when the database was attached.
The main and temp schemas cannot be detached.
DETACH cannot be used while a transaction is active. Commit or roll back any open transaction before detaching a database.

Examples

Detach a Database

ATTACH 'archive.db' AS archive;

-- Use the attached database
SELECT count(*) FROM archive.events;

-- Detach when done
DETACH DATABASE archive;

Detach Without the DATABASE Keyword

DETACH archive;

See Also