UNDROP TABLE¶
Restabelece a versão mais recente de uma tabela descartada.
- Consulte também:
CREATE TABLE , ALTER TABLE , DROP TABLE , SHOW TABLES , DESCRIBE TABLE
Sintaxe¶
UNDROP TABLE <name>
Parâmetros¶
name
Especifica o identificador para a tabela a ser restaurada. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.
Notas de uso¶
As tabelas só podem ser restauradas no banco de dados e no esquema que continham a tabela no momento da exclusão. Por exemplo, se você criar e descartar uma tabela
t1
no esquemas1
, alterar o esquema atual paras2
e tentar restaurar a tabelat1
pelo ID (ou nome qualificado,s1.t1
), a tabelat1
será restaurada no esquemas1
em vez de no esquema atual,s2
.Se já existir uma tabela com o mesmo nome, um erro é devolvido.
Se você tiver várias tabelas excluídas com o mesmo nome, poderá usar a palavra-chave IDENTIFIER com o identificador gerado pelo sistema (de Exibição TABLES) para especificar qual tabela restaurar. O nome da tabela restaurada permanece o mesmo. Consulte Exemplos.
Nota
Sé é possível usar o identificador gerado pelo sistema com a palavra-chave IDENTIFIER() ao executar o comando UNDROP para tabelas, esquemas e bancos de dados.
UNDROP conta com o recurso Snowflake Time Travel. Um objeto só pode ser restaurado se o objeto foi excluído dentro do Período de retenção de dados. O valor padrão é 24 horas.
Não é possível restaurar uma tabela híbrida.
Exemplos¶
Exemplo básico¶
Restaurar a versão mais recente de uma tabela descartada (este exemplo se baseia nos exemplos fornecidos para DROP TABLE):
UNDROP TABLE t2;
+---------------------------------+
| status |
|---------------------------------|
| Table T2 successfully restored. |
+---------------------------------+
UNDROP a tabela usando o ID de tabela¶
Restaure uma tabela descartada pelo ID usando IDENTIFIER(). É possível encontrar o ID da tabela específica a ser descartada usando a coluna table_id
em Exibição TABLES. Por exemplo, se você tiver várias tabelas descartadas chamadas my_table
e quiser restaurar a penúltima tabela descartada my_table
, siga estas etapas:
Encontre o ID da tabela descartada na exibição TABLES Account Usage:
SELECT table_id, table_name, table_schema, table_catalog, created, deleted, comment FROM SNOWFLAKE.ACCOUNT_USAGE.TABLES WHERE table_catalog = 'DB1' AND table_schema = 'S1' AND table_name = 'MY_TABLE' AND deleted IS NOT NULL ORDER BY deleted;
+----------+------------+--------------+---------------+-------------------------------+-------------------------------+---------+ | TABLE_ID | TABLE_NAME | TABLE_SCHEMA | TABLE_CATALOG | CREATED | DELETED | COMMENT | |----------+------------+--------------+---------------+-------------------------------+-------------------------------+---------| | 408578 | MY_TABLE | S1 | DB1 | 2024-07-01 15:39:07.565 -0700 | 2024-07-01 15:40:28.161 -0700 | NULL | +----------+------------+--------------+---------------+-------------------------------+-------------------------------+---------+ | 408607 | MY_TABLE | S1 | DB1 | 2024-07-01 17:43:07.565 -0700 | 2024-07-01 17:44:28.161 -0700 | NULL | +----------+------------+--------------+---------------+-------------------------------+-------------------------------+---------+
Restaure
my_table
pelo ID de tabela. Para restaurar a penúltima tabela excluída, use o ID de tabela408578
da saída da instrução anterior. Após executar a seguinte instrução, a tabela será restaurada com seu nome original,my_table
:UNDROP TABLE IDENTIFIER(408578);