Compartilhar via


ALTER SCHEMA

Aplica-se a:marque sim SQL do Databricks marque sim Databricks Runtime

Altera o proprietário de um esquema, define o comportamento de otimização preditiva ou altera metadados associados a um esquema definindo DBPROPERTIES. Os valores de propriedade especificados substituem qualquer valor existente pelo mesmo nome de propriedade.

Embora o uso de SCHEMA e DATABASE seja intercambiável, SCHEMA é preferencial.

Sintaxe

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

Parâmetros

  • schema_name

    O nome do esquema a ser alterado. Se o esquema não puder ser encontrado, o Azure Databricks emitirá um erro SCHEMA_NOT_FOUND.

  • COLOCAÇÃO PADRÃO default_collation_name

    Aplica-se a:check marked yes Databricks SQL check marked yes Databricks Runtime 17.1 and above

    Altera a ordenação padrão para novos objetos definidos dentro do esquema. A ordenação padrão de objetos existentes dentro do esquema não é alterada.

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

    As propriedades do esquema a serem definidas ou a terem a definição removida.

  • [ SET ] OWNER TO entidade de segurança

    Transfere a propriedade do esquema para principal.

    Aplica-se a:marque sim SQL do Databricks marque sim LTS do Databricks Runtime 11.3 e superior

    SET é permitido como uma palavra-chave opcional.

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

    Aplicar marcas ao esquema. Você precisa ter USE SCHEMA para aplicar uma marca ao esquema.

    Aplica-se a:marque sim SQL do Databricks marque sim LTS do Databricks Runtime 13.3 e superior

  • MARCAÇÕES NÃO DEFINIDAS ( nome_da_marca [, ...] )

    Remova as marcas do esquema. É necessário ter USE SCHEMA para remover uma marca do esquema.

    Aplica-se a:marque sim SQL do Databricks marque sim LTS do Databricks Runtime 13.3 e superior

  • tag_name

    Um literal STRING. O tag_name deve ser exclusivo no esquema.

  • tag_value

    Um literal STRING.

  • { ENABLE | DISABLE | HERDAR } OTIMIZAÇÃO PREDITIVA

    Aplica-se a:marque sim SQL do Databricks marque sim LTS do Databricks Runtime 12.2 e superior com marque sim somente Catálogo do Unity

    Altera o esquema para a configuração de otimização preditiva desejada. Por padrão, quando os esquemas são criados, o comportamento é para INHERIT do catálogo. Por padrão, novos objetos criados no esquema herdarão a configuração do esquema.

    Se o esquema for alterado, o comportamento será em cascata para todos os objetos que herdam a otimização preditiva. Objetos que ENABLE ou DISABLE a otimização preditiva explicitamente não são afetados pela configuração do esquema.

    Para definir a otimização preditiva para um esquema, o usuário deve ter a permissão CREATE no esquema.

    Somente os esquemas no compartilhamento não Delta, catálogos gerenciados no Catálogo do Unity são qualificados para otimização preditiva.

Exemplos

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

-- Alter the default collation of a schema
> ALTER SCHEMA my_schema DEFAULT COLLATION UNICODE_CI_AI;