DROP SCHEMA
适用于: Databricks SQL Databricks Runtime
删除架构,然后从文件系统中删除与架构关联的目录。 如果系统中不存在该架构,则会引发异常。 若要删除某个架构,你必须是其所有者。
虽然使用 SCHEMA
和 DATABASE
是可互换的,但最好使用 SCHEMA
。
语法
DROP SCHEMA [ IF EXISTS ] schema_name [ RESTRICT | CASCADE ]
参数
IF EXISTS
如果已指定此项,则当架构不存在时,不会引发异常。
-
系统中现有架构的名称。 如果该名称不存在,则会引发异常。
RESTRICT
如果已指定此项,将限制删除非空架构,并且这在默认情况下处于启用状态。
CASCADE
如果已指定此项,则以递归方式删除所有关联的表和函数。 在 Unity Catalog 中,使用
CASCADE
软删除表删除架构:托管表文件将在 30 天后清理,但外部文件不会删除。 警告! 如果架构由工作区级别 Hive 元存储管理,则使用CASCADE
以递归方式删除架构会删除指定位置中的所有文件,而不考虑表类型 (无论是托管还是外部)。
示例
-- Create `inventory_schema` Database
> CREATE SCHEMA inventory_schema COMMENT 'This schema is used to maintain Inventory';
-- Drop the schema and its tables
> DROP SCHEMA inventory_schema CASCADE;
-- Drop the schema using IF EXISTS
> DROP SCHEMA IF EXISTS inventory_schema CASCADE;