Поделиться через


ALTER SCHEMA

Область применения:флажок Databricks SQL флажок Databricks Runtime

Изменяет владельца схемы, задает поведение прогнозной оптимизации или изменяет метаданные, связанные с схемой, задав DBPROPERTIES. Указанные значения свойств переопределяют любое существующее значение с тем же именем свойства.

Хотя использование SCHEMA и DATABASE является взаимозаменяемым, лучше использовать 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 ( { 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

    Литерал STRING. tag_name должен быть уникальным в схеме.

  • tag_value

    Литерал STRING.

  • { ENABLE | DISABLE | НАСЛЕДОВАНИЕ } ПРОГНОЗНАЯ ОПТИМИЗАЦИЯ

    применяется:отмечено Databricks SQL отмечено Databricks Runtime 12.2 LTS и выше отмечено только Unity Catalog

    Изменяет схему на нужный параметр прогнозной оптимизации. По умолчанию при создании схем поведение заключается в том, чтобы INHERIT из каталога. По умолчанию новые объекты, созданные в схеме, наследуют параметр от схемы.

    Если схема изменена, поведение будет каскадно для всех объектов, наследующих прогнозную оптимизацию. Объекты, явно задействованные в прогнозной оптимизации ENABLE или DISABLE, не подвержены влиянию настройки схемы.

    Чтобы задать прогнозную оптимизацию схемы, пользователь должен иметь CREATE разрешение на схему.

    Только схемы в управляемых каталогах Unity Catalog, не использующих Delta Sharing, могут быть использованы для прогнозной оптимизации.

Примеры

-- 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;