DROP SCHEMA

適用於:打勾為「是」Databricks SQL 打勾為「是」Databricks Runtime

卸除架構,並從文件系統中刪除與架構相關聯的目錄。 如果系統中不存在該架構,則會拋出例外狀況。

雖然SCHEMADATABASE的使用可以互換,但更偏好使用SCHEMA

許可

要在 Unity 目錄中放置結構,您必須擁有 MANAGE 該架構的權限,或是該架構的擁有者,並且 USE CATALOG 擁有該架構所在的目錄。

根據 物件階層結構,父目錄的擁有者及在父目錄上的 MANAGE 使用者也能執行此操作。

語法

DROP SCHEMA [ IF EXISTS ] schema_name [ RESTRICT | CASCADE ]

參數

  • 如果存在

    如果指定,當架構不存在時,不會擲回任何例外狀況。

  • schema_name

    系統中現有架構的名稱。 如果名稱不存在,則會拋出例外狀況。

  • 限制

    如果指定,則限制刪除非空的架構,且預設為啟用。

  • 級聯

    如果指定,則會以遞歸方式卸除所有相關聯的數據表和函式。

    Note

    在 Unity Catalog 中,使用 CASCADE 軟刪除(soft-delete)會移除結構及其子物件。 管理資料表與卷的資料檔案會被保留,以提供 7 天的復原視窗。 復原視窗結束後,資料檔案會在 48 小時內永久刪除(清除)。 外部資料表和外部磁碟區的檔案不會被刪除。 詳情請參閱 Unity 目錄中的物件儲存生命週期

    警告! 如果資料結構由工作區級別的 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;