UNDROP DATABASE¶
Stellt die neueste Version einer entfernten Datenbank wieder her.
- Siehe auch:
CREATE DATABASE, ALTER DATABASE, DESCRIBE DATABASE, DROP DATABASE, SHOW DATABASES
Syntax¶
UNDROP DATABASE <name>
Parameter¶
name
Gibt den Bezeichner für die Datenbank an, die wiederhergestellt werden soll. Wenn der Bezeichner Leerzeichen oder Sonderzeichen enthält, muss die gesamte Zeichenfolge in doppelte Anführungszeichen gesetzt werden. Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß- und Kleinschreibung zu beachten.
Nutzungshinweise¶
Wenn bereits eine Datenbank mit dem gleichen Namen vorhanden ist, wird ein Fehler zurückgegeben.
UNDROP stützt sich auf die Snowflake-Funktion Time Travel. Ein Objekt kann nur wiederhergestellt werden, wenn es innerhalb der Datenaufbewahrungsfrist gelöscht wurde. Der Standardwert ist 24 Stunden.
Hybridtabellen, die zu der angegebenen Datenbank gehören, werden nicht gelöscht.
Wenn Sie mehrere gelöschte Datenbanken mit dem gleichen Namen haben, können Sie das Schlüsselwort IDENTIFIER mit dem vom System generierten Bezeichner (aus Ansicht DATABASES) verwenden, um anzugeben, welche Datenbank wiederhergestellt werden soll. Der Name der wiederhergestellten Datenbank bleibt derselbe. Siehe Beispiele.
Bemerkung
Sie können den vom System generierten Bezeichner nur mit dem Schlüsselwort IDENTIFIER() verwenden, wenn Sie den Befehl UNDROP für Tabellen, Schemas und Datenbanken ausführen.
Beispiele¶
Grundlegendes Beispiel¶
Stellen Sie die neueste Version einer entfernten Datenbank wieder her (dieses Beispiel baut auf den DROP DATABASE-Beispielen auf):
UNDROP DATABASE mytestdb2;
+-------------------------------------------+
| status |
|-------------------------------------------|
| Database MYTESTDB2 successfully restored. |
+-------------------------------------------+
SHOW DATABASES HISTORY;
+---------------------------------+-----------+------------+------------+--------+--------+---------+---------+----------------+------------+
| created_on | name | is_default | is_current | origin | owner | comment | options | retention_time | dropped_on |
|---------------------------------+-----------+------------+------------+--------+--------+---------+---------+----------------+------------|
| Tue, 17 Mar 2015 16:57:04 -0700 | MYTESTDB | N | Y | | PUBLIC | | | 1 | [NULL] |
| Tue, 17 Mar 2015 17:06:32 -0700 | MYTESTDB2 | N | N | | PUBLIC | | | 1 | [NULL] |
| Wed, 25 Feb 2015 17:30:04 -0800 | SALES1 | N | N | | PUBLIC | | | 1 | [NULL] |
| Fri, 13 Feb 2015 19:21:49 -0800 | DEMO1 | N | N | | PUBLIC | | | 1 | [NULL] |
+---------------------------------+-----------+------------+------------+--------+--------+---------+---------+----------------+------------+
UNDROP Datenbank unter Verwendung der Datenbank-ID¶
Wiederherstellen einer gelöschten Datenbank durch ID mit IDENTIFIER(). Die Datenbank-ID der spezifischen Datenbank, die wiederhergestellt werden soll, finden Sie in der Spalte database_id
in der Datei Ansicht DATABASES. Wenn Sie z. B. mehrere gelöschte Datenbanken mit dem Namen my_database
haben und die vorletzte gelöschte Datenbank my_database
wiederherstellen möchten, gehen Sie wie folgt vor:
Suchen Sie die Datenbank-ID der gelöschten Datenbank in der Ansicht Account Usage DATABASES:
SELECT database_id, database_name, created, deleted, comment FROM SNOWFLAKE.ACCOUNT_USAGE.DATABASES WHERE database_name = 'MY_DATABASE' AND deleted IS NOT NULL ORDER BY deleted;
+-------------+---------------+-------------------------------+-------------------------------+---------+ | DATABASE_ID | DATABASE_NAME | CREATED | DELETED | COMMENT | |-------------+---------------+-------------------------------+-------------------------------+---------| | 494 | MY_DATABASE | 2024-07-01 17:51:33.380 -0700 | 2024-07-01 17:51:46.228 -0700 | NULL | | 492 | MY_DATABASE | 2024-07-01 17:51:52.560 -0700 | 2024-07-01 17:52:39.881 -0700 | NULL | | 493 | MY_DATABASE | 2024-07-01 17:52:39.849 -0700 | 2024-07-01 17:52:44.562 -0700 | NULL | +-------------+---------------+-------------------------------+-------------------------------+---------+
my_database
über die DatenbankID wiederherstellen. Um die vorletzte gelöschte Datenbank wiederherzustellen, verwenden Sie die Datenbank-ID492
aus der Ausgabe der vorherigen Anweisung. Nachdem Sie die folgende Anweisung ausgeführt haben, wird die Datenbank unter ihrem ursprünglichen Namen,my_database
, wiederhergestellt:UNDROP DATABASE IDENTIFIER(492);