DROP CATALOG

Applies to: check marked yes Databricks SQL check marked yes Databricks Runtime 10.4 LTS and above check marked yes Unity Catalog only

Drops a catalog. An exception is thrown if the catalog does not exist in the metastore. To drop a catalog you must have the MANAGE privilege on the catalog or be its owner.

Syntax

DROP CATALOG [ IF EXISTS ] catalog_name [ RESTRICT | CASCADE ]

Parameters

  • IF EXISTS

    If specified, no exception is thrown when the catalog does not exist.

  • catalog_name:

    The name of an existing catalog in the metastore. If the name does not exist, an exception is thrown.

  • RESTRICT

    If specified, restricts dropping a non-empty catalog. Enabled by default.

  • CASCADE

    If specified, drops all of the associated databases (schemas) and the objects within them, recursively.

    Note

    In Unity Catalog, dropping a catalog using CASCADE soft-deletes the catalog and its child objects. Data files for managed tables and volumes are retained to allow for a 7-day recovery window. After the recovery window ends, the data files are permanently deleted (purged) within 48 hours. Files for external tables and external volumes are not deleted. For details, see Object storage lifecycle in Unity Catalog.

Examples

-- Create a `vaccine` catalog
> CREATE CATALOG vaccine COMMENT 'This catalog is used to maintain information about vaccines';

-- Drop the catalog and its schemas
> DROP CATALOG vaccine CASCADE;

-- Drop the catalog using IF EXISTS and only if it is empty.
> DROP CATALOG IF EXISTS vaccine RESTRICT;