UNDROP SCHEMA

Restaure a versão mais recente de um esquema descartado.

Consulte também:

CREATE SCHEMA , ALTER SCHEMA , DESCRIBE SCHEMA , DROP SCHEMA , SHOW SCHEMAS

Sintaxe

UNDROP SCHEMA <name>
Copy

Parâmetros

name

Especifica o identificador para o esquema a ser restaurado. 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

  • Um esquema só pode ser restaurado no banco de dados que o continha no momento de sua exclusão. Por exemplo, se você criar e descartar um esquema s1 no banco de dados db1, alterar o banco de dados atual para db2 e tentar restaurar o esquema s1 pelo ID (ou nome totalmente qualificado, db1.s1), o esquema s1 será restaurado no banco de dados db1 em vez de no banco de dados atual, db2.

  • Se já existir um esquema com o mesmo nome, um erro será retornado.

  • Tabelas híbridas que pertencem ao esquema especificado não são descartadas.

  • Se você tiver vários esquemas descartados com o mesmo nome, poderá usar a palavra-chave IDENTIFIER com o identificador gerado pelo sistema (de Exibição SCHEMATA) para especificar qual esquema restaurar. O nome do esquema restaurado 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.

Exemplos

Exemplo básico

Restaurar a versão mais recente de um esquema descartado (este exemplo se baseia nos exemplos fornecidos para DROP SCHEMA):

UNDROP SCHEMA myschema;
Copy
+----------------------------------------+
| status                                 |
|----------------------------------------|
| Schema MYSCHEMA successfully restored. |
+----------------------------------------+
SHOW SCHEMAS HISTORY;
Copy
+---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+------------+
| created_on                      | name               | is_default | is_current | database_name | owner  | comment                                                   | options | retention_time | dropped_on |
|---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+------------|
| Fri, 13 May 2016 17:26:07 -0700 | INFORMATION_SCHEMA | N          | N          | MYTESTDB      |        | Views describing the contents of schemas in this database |         |              1 | [NULL]     |
| Tue, 17 Mar 2015 17:18:42 -0700 | MYSCHEMA           | N          | N          | MYTESTDB      | PUBLIC |                                                           |         |              1 | [NULL]     |
| Tue, 17 Mar 2015 16:57:04 -0700 | PUBLIC             | N          | Y          | MYTESTDB      | PUBLIC |                                                           |         |              1 | [NULL]     |
+---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+------------+

UNDROP esquema usando o ID de esquema

Restaure um esquema descartado pelo ID usando IDENTIFIER(). É possível encontrar o ID do esquema específico a ser restaurado usando a coluna schema_id em Exibição SCHEMATA. Por exemplo, se você tiver vários esquemas descartados nomeados s1 e quiser restaurar o penúltimo esquema descartado s1, siga estas etapas:

  1. Encontre o ID do esquema descartado na exibição SCHEMATA Account Usage:

    SELECT schema_id,
      schema_name,
      catalog_name,
      created,
      deleted,
      comment
    FROM SNOWFLAKE.ACCOUNT_USAGE.SCHEMATA
    WHERE schema_name = 'S1'
    AND catalog_name = 'DB1'
    AND deleted IS NOT NULL
    ORDER BY deleted;
    
    Copy
    +-----------+-------------+---------------+-------------------------------+-------------------------------+---------+
    | SCHEMA_ID | SCHEMA_NAME | CATALOG_NAME  | CREATED                       | DELETED                       | COMMENT |
    |-----------+-------------+---------------+-------------------------------+-------------------------------+---------|
    |       797 | S1          | DB1           | 2024-07-01 17:53:01.955 -0700 | 2024-07-01 17:53:11.889 -0700 | NULL    |
    |       798 | S1          | DB1           | 2024-07-01 17:53:11.889 -0700 | 2024-07-01 17:53:16.327 -0700 | NULL    |
    |       799 | S1          | DB1           | 2024-07-01 17:53:16.327 -0700 | 2024-07-01 17:53:25.066 -0700 | NULL    |
    +-----------+-------------+---------------+-------------------------------+-------------------------------+---------+
    
  2. Restaure o esquema s1 usando o ID de esquema. Para restaurar o penúltimo esquema excluído, use o esquema ID 798 da saída da instrução anterior. Após executar a seguinte instrução, o esquema é restaurado com seu nome original, s1:

    UNDROP SCHEMA IDENTIFIER(798);
    
    Copy