CREATE … CLONE-Befehl: Klonen von Datenbanken und Schemas, die Hybridtabellen enthalten¶
Achtung
Diese Verhaltensweisen sind im Bundle 2024_08 enthalten.
Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.
In Anbetracht der Tatsache, dass Hybridtabellen nur eine begrenzte Unterstützung für Klonen haben, beachten Sie das folgende Verhalten, wenn Sie versuchen, eine Datenbank oder ein Schema zu klonen, das Hybridtabellen enthält:
- Vor der Änderung:
Im Allgemeinen überspringen die Befehle CREATE DATABASE … CLONE und CREATE SCHEMA … CLONE Hybridtabellen, wenn es in der angegebenen Datenbank oder dem angegebenen Schema Hybridtabellen gibt.
CREATE DATABASE … CLONE-Befehle klonen Hybridtabellen, wenn keine Time Travel-Parameter im Befehl angegeben sind oder wenn ein AT TIMESTAMP-Wert angegeben ist.
Die folgenden Befehle sind beispielsweise erfolgreich, lassen aber Hybridtabellen aus:
Der folgende Befehl ist erfolgreich und nimmt Hybridtabellen in die geklonte Datenbank auf:
- Nach der Änderung:
CREATE SCHEMA … CLONE-Befehle geben einen Fehler zurück, wenn Hybridtabellen im angegebenen Schema existieren. Zum Beispiel schlägt der folgende Befehl fehl:
Der Fehler fordert Sie auf, den Befehl mit dem Parameter IGNORE HYBRID TABLES auszuführen. Wenn Sie diesen Parameter verwenden, erstellt der Befehl das geklonte Schema, überspringt jedoch alle Hybridtabellen. Beispiel:
Das Verhalten von CREATE DATABASE … CLONE-Befehlen, die keine Time Travel-Parameter angeben ändert sich nicht. Der folgende Befehl ist zum Beispiel erfolgreich und schließt Hybridtabellen in die geklonte Datenbank ein:
CREATE DATABASE … CLONE-Befehle, die Time Travel verwenden und die Zeit mit dem Parameter STATEMENT angeben, geben einen Fehler zurück, wenn in der angegebenen Datenbank Hybridtabellen existieren. Zum Beispiel schlägt der folgende Befehl fehl:
Der Fehler fordert Sie auf, den Befehl mit dem Parameter IGNORE HYBRID TABLES auszuführen. Wenn Sie diesen Parameter verwenden, erstellt der Befehl die geklonte Datenbank, überspringt jedoch alle Hybridtabellen. Beispiel:
Andere CREATE DATABASE … CLONE-Befehle, die Time Travel-Parameter angeben und AT TIMESTAMP auf einer Zieldatenbank, die Hybridtabellen enthält, nicht verwenden, geben entweder einen Fehler zurück oder überspringen die Hybridtabellen stillschweigend:
Wenn das Bundle aktiviert ist (entweder explizit oder standardmäßig), geben diese CREATE DATABASE … CLONE-Befehle einen Fehler zurück.
Wenn das Bundle explizit deaktiviert ist, überspringen diese CREATE DATABASE … CLONE-Befehle stillschweigend Hybridtabellen.
Weitere Informationen dazu finden Sie unter Klonen von Datenbanken, die Hybridtabellen enthalten.
Ref.: 1792