ALTER SCHEMA
Aplica-se a: SQL do Databricks 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
{ 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
-
O nome do esquema a ser alterado. Se o esquema não puder ser encontrado, o Azure Databricks emitirá um erro SCHEMA_NOT_FOUND.
DBPROPERTIES ( key = val [, …] )
As propriedades do esquema a serem definidas ou a terem a definição removida.
[ SET ] OWNER TO principal
Transfere a propriedade do esquema para
principal
.Aplica-se a: SQL do Databricks Databricks Runtime 11.3 LTS e versões posteriores
SET
é permitido como uma palavra-chave opcional.MARCAÇÕES DEFINIDAS ( { tag_name = tag_value } [, ...] )
Aplicar marcas ao esquema. Você precisa ter
use_schema
para aplicar uma marca ao esquema.Aplica-se a: SQL do Databricks Databricks Runtime 13.3 LTS e versões posteriores
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: SQL do Databricks Databricks Runtime 13.3 LTS e versões posteriores
nome_da_tag
Um literal
STRING
. Otag_name
deve ser exclusivo no esquema.tag_value
Um literal
STRING
.{ ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION
Aplica-se a: SQL do Databricks Databricks Runtime 12.2 LTS e versões posteriores 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
ouDISABLE
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;