共用方式為


ALTER SCHEMA

適用於:核取記號為「是」Databricks SQL 核取記號為「是」Databricks Runtime

變更架構的擁有者、設定 預測優化 行為,或藉由設定 DBPROPERTIES來改變與架構相關聯的元數據。 指定的屬性值會覆蓋任何具有相同屬性名稱的現有值。

雖然 和 SCHEMADATABASE 的使用是可互換的, SCHEMA 但偏好使用 。

語法

ALTER SCHEMA schema_name
    { SET DBPROPERTIES ( { key = val } [, ...] ) |
    [ SET ] OWNER TO principal
    SET TAGS ( { tag_name = tag_value } [, ...] ) |
    UNSET TAGS ( tag_name [, ...] ) |
    { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION } }

參數

  • schema_name

    要改變之架構的名稱。 如果找不到架構,Azure Databricks 就會引發 SCHEMA_NOT_FOUND 錯誤。

  • DBPROPERTIES (key = val [, ...] )

    要設定或取消設定的架構屬性。

  • [ SET ] 所有者至 主要

    將架構的擁有權轉移至 principal

    適用於:核取記號為「是」 Databricks SQL 核取記號為「是」 Databricks Runtime 11.3 LTS 和更新版本

    允許 SET 作為可選關鍵字。

  • SET TAGS ( { tag_name = tag_value } [, ...] )

    將標籤套用至架構。 您必須有 use_schema,才能將標籤套用至架構。

    適用於:核取記號為「是」 Databricks SQL 核取記號為「是」 Databricks Runtime 13.3 LTS 和更新版本

  • UNSET TAGS (tag_name [, ...] )

    從架構中移除標籤。 您必須有 use_schema,才能從架構中移除標籤。

    適用於:核取記號為「是」 Databricks SQL 核取記號為「是」 Databricks Runtime 13.3 LTS 和更新版本

  • tag_name

    常值 STRINGtag_name 在架構內必須是唯一的。

  • tag_value

    常值 STRING

  • { ENABLE |DISABLE |INHERIT } 預測優化

    適用於:標示為是 Databricks SQL 標示為是 Databricks Runtime 12.2 LTS 和更新版本,標示為是 僅限 Unity 目錄

    將架構變更為所需的預測優化設定。 預設情況下,當建立結構描述時,預設動作是從目錄 INHERIT。 根據預設,在架構中建立的新物件會繼承架構中的設定。

    如果變更架構,行為會串聯至繼承預測優化的所有物件。 明確 ENABLEDISABLE 預測優化的物件不會受到架構設定的影響。

    若要設定架構的預測優化,用戶必須具有架構 CREATE 許可權。

    只有非 Delta Sharing 的架構以及 Unity Catalog 中的受控目錄才有資格進行預測優化。

範例

-- Creates a schema named `inventory`.
> CREATE SCHEMA inventory;

-- Alters the schema to set properties `Edited-by` and `Edit-date`.
> ALTER SCHEMA inventory SET DBPROPERTIES ('Edited-by' = 'John', 'Edit-date' = '01/01/2001');

-- Verify that properties are set.
> DESCRIBE SCHEMA EXTENDED inventory;
 database_description_item                 database_description_value
 ------------------------- ------------------------------------------
             Database Name                                  inventory
               Description
                  Location    file:/temp/spark-warehouse/inventory.db
                Properties ((Edit-date,01/01/2001), (Edited-by,John))

-- Transfer ownership of the schema to another user
> ALTER SCHEMA inventory OWNER TO `alf@melmak.et`

-- Applies three tags to the schema named `test`.
> ALTER SCHEMA test SET TAGS ('tag1' = 'val1', 'tag2' = 'val2', 'tag3' = 'val3');

-- Removes three tags from the schema named `test`.
> ALTER SCHEMA test UNSET TAGS ('tag1', 'tag2', 'tag3');
-- Enables predictive optimization for objects in schema my_schema
> ALTER SCHEMA my_schema ENABLE PREDICTIVE OPTIMIZATION;