適用於:
Databricks SQL
Databricks Runtime
卸除架構,並從文件系統中刪除與架構相關聯的目錄。 如果系統中不存在該架構,則會拋出例外狀況。
雖然SCHEMA和DATABASE的使用可以互換,但更偏好使用SCHEMA。
許可
要在 Unity 目錄中放置結構,您必須擁有 MANAGE 該架構的權限,或是該架構的擁有者,並且 USE CATALOG 擁有該架構所在的目錄。
根據 物件階層結構,父目錄的擁有者及在父目錄上的 MANAGE 使用者也能執行此操作。
語法
DROP SCHEMA [ IF EXISTS ] schema_name [ RESTRICT | CASCADE ]
參數
如果存在
如果指定,當架構不存在時,不會擲回任何例外狀況。
-
系統中現有架構的名稱。 如果名稱不存在,則會拋出例外狀況。
限制
如果指定,則限制刪除非空的架構,且預設為啟用。
級聯
如果指定,則會以遞歸方式卸除所有相關聯的數據表和函式。
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;