DROP ICEBERG TABLE

Remove uma tabela Iceberg do esquema atual/especificado.

Observe que este tópico se refere às tabelas Iceberg simplesmente como “tabelas”, exceto onde a especificação de tabelas Iceberg evita confusão.

Consulte também:

CREATE ICEBERG TABLE , SHOW ICEBERG TABLES , DESCRIBE ICEBERG TABLE

Sintaxe

DROP [ ICEBERG ] TABLE [ IF EXISTS ] <name> [ CASCADE | RESTRICT ]
Copy

Parâmetros

name

Especifica o identificador da tabela a ser descartada. Se o identificador contiver espaços, caracteres especiais ou caracteres com letras maiúsculas e minúsculas, toda a cadeia de caracteres deve ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas (por exemplo, "My Object").

Se o identificador da tabela não estiver totalmente qualificado (na forma de db_name.schema_name.table_name ou schema_name.table_name), o comando procura a tabela no esquema atual para a sessão.

CASCADE | RESTRICT

Especifica se a tabela pode ser descartada caso existam chaves estrangeiras que façam referência à tabela:

  • CASCADE descarta a tabela mesmo que a tabela tenha chaves primárias/únicas que são referenciadas por chaves estrangeiras em outras tabelas.

  • RESTRICT retorna um aviso sobre as referências de chave estrangeiras existentes e não descarta a tabela.

Padrão: CASCADE

Requisitos de controle de acesso

Uma função usada para executar este comando SQL deve ter os seguintes privilégios no mínimo:

Privilégio

Objeto

Notas

OWNERSHIP

Tabela Iceberg

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

USAGE

Volume externo

USAGE

Integração (catálogo)

Obrigatório se a tabela Iceberg usar uma integração de catálogo.

Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • A restauração de uma tabela Iceberg descartada usando o comando UNDROP ICEBERG TABLE ou UNDROP TABLE não é suportada atualmente.

  • Antes de descartar uma tabela, verifique se nenhuma exibição faz referência à tabela. Descartar uma tabela que seja referenciada por uma exibição invalida a exibição (consultar a exibição retorna um erro “objeto não existe”).

  • Para descartar uma tabela, você deve estar usando uma função que tenha o privilégio OWNERSHIP na tabela.

Exemplos

Descartar uma tabela:

DROP ICEBERG TABLE t2;

+--------------------------+
| status                   |
|--------------------------|
| T2 successfully dropped. |
+--------------------------+
Copy

Descartar a tabela novamente, mas não relatar um erro se a tabela não existir:

DROP ICEBERG TABLE IF EXISTS t2;

+------------------------------------------------------------+
| status                                                     |
|------------------------------------------------------------|
| Drop statement executed successfully (T2 already dropped). |
+------------------------------------------------------------+
Copy