ALTER DYNAMIC TABLE¶
Ändert die Eigenschaften einer dynamischen Tabelle.
Unter diesem Thema:
Syntax¶
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> { SUSPEND | RESUME }
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> RENAME TO <new_name>
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> SWAP WITH <target_dynamic_table_name>
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> REFRESH
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> { clusteringAction }
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> { tableColumnCommentAction }
ALTER DYNAMIC TABLE <name> { SET | UNSET } COMMENT = '<string_literal>'
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> dataGovnPolicyTagAction
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> searchOptimizationAction
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> SET
[ TARGET_LAG = { '<num> { seconds | minutes | hours | days }' | DOWNSTREAM } ]
[ WAREHOUSE = <warehouse_name> ]
[ DATA_RETENTION_TIME_IN_DAYS = <integer> ]
[ MAX_DATA_EXTENSION_TIME_IN_DAYS = <integer> ]
[ DEFAULT_DDL_COLLATION = '<collation_specification>' ]
ALTER DYNAMIC TABLE [ IF EXISTS ] <name> UNSET
[ DATA_RETENTION_TIME_IN_DAYS ],
[ MAX_DATA_EXTENSION_TIME_IN_DAYS ],
[ DEFAULT_DDL_COLLATION ]
Wobei:
clusteringAction ::= { CLUSTER BY ( <expr> [ , <expr> , ... ] ) | { SUSPEND | RESUME } RECLUSTER | DROP CLUSTERING KEY }Weitere Informationen dazu finden Sie unter Gruppierungsschlüssel und geclusterte Tabellen.
tableCommentAction ::= { ALTER | MODIFY [ ( ] [ COLUMN ] <col1_name> COMMENT '<string>' , [ COLUMN ] <col1_name> UNSET COMMENT [ , ... ] [ ) ] }dataGovnPolicyTagAction ::= { ADD ROW ACCESS POLICY <policy_name> ON ( <col_name> [ , ... ] ) | DROP ROW ACCESS POLICY <policy_name> | DROP ROW ACCESS POLICY <policy_name> , ADD ROW ACCESS POLICY <policy_name> ON ( <col_name> [ , ... ] ) | DROP ALL ROW ACCESS POLICIES } | { { ALTER | MODIFY } [ COLUMN ] <col1_name> SET MASKING POLICY <policy_name> [ USING ( <col1_name> , <cond_col_1> , ... ) ] [ FORCE ] | UNSET MASKING POLICY } | { ALTER | MODIFY } [ COLUMN ] <col1_name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ] , [ COLUMN ] <col2_name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ] | { ALTER | MODIFY } [ COLUMN ] <col1_name> UNSET TAG <tag_name> [ , <tag_name> ... ] , [ COLUMN ] <col2_name> UNSET TAG <tag_name> [ , <tag_name> ... ] } | { SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ] | UNSET TAG <tag_name> [ , <tag_name> ... ] }searchOptimizationAction ::= { ADD SEARCH OPTIMIZATION [ ON <search_method_with_target> [ , <search_method_with_target> ... ] [ EQUALITY ] ] | DROP SEARCH OPTIMIZATION [ ON { <search_method_with_target> | <column_name> | <expression_id> } [ EQUALITY ] [ , ... ] ] | SUSPEND SEARCH OPTIMIZATION [ ON { <search_method_with_target> | <column_name> | <expression_id> } [ , ... ] ] | RESUME SEARCH OPTIMIZATION [ ON { <search_method_with_target> | <column_name> | <expression_id> } [ , ... ] ] }Weitere Details dazu finden Sie unter Suchoptimierungsaktionen (searchOptimizationAction).
Parameter¶
name
Bezeichner für die zu ändernde dynamische Tabelle.
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ß-/Kleinschreibung zu beachten.
Weitere Informationen dazu finden Sie unter Anforderungen an Bezeichner.
SUSPEND | RESUME
Gibt die Aktion an, die für die dynamische Tabelle ausgeführt werden soll:
SUSPEND
setzt die Aktualisierungen der dynamischen Tabelle aus. Wenn die dynamische Tabelle von anderen dynamischen Tabellen verwendet wird, werden diese ebenfalls ausgesetzt.RESUME
setzt die Aktualisierungen der dynamischen Tabelle fort. Fortsetzungsoperationen wirken sich kaskadenartig auf alle nachgelagerten dynamischen Tabellen aus, die nicht manuell ausgesetzt wurden.
RENAME TO new_name
Benennt die angegebene dynamische Tabelle mit einem neuen Bezeichner um, der derzeit von keiner anderen dynamischen Tabelle im Schema verwendet wird.
Das Umbenennen einer dynamischen Tabelle erfordert die Berechtigung CREATE DYNAMIC TABLE für das Schema der dynamischen Tabelle.
Sie können die dynamische Tabelle auch in eine andere Datenbank und/oder ein anderes Schema verschieben und dabei optional die dynamische Tabelle umbenennen. Geben Sie dazu einen qualifizierten
new_name
-Wert an, der den neuen Datenbank- und/oder Schemanamen im Formatdb_name.schema_name.new_name
bzw.schema_name.new_name
enthält.Es gelten die folgenden Einschränkungen:
Die Zieldatenbank und/oder das Zielschema müssen bereits vorhanden sein. Außerdem darf in der Zieldatenbank nicht bereits ein gleichnamiges Schema vorhanden sein, da die Anweisung sonst einen Fehler zurückgibt.
Sie können ein Objekt nicht in ein verwaltetes Zugriffsschema verschieben, es sei denn, der Objekteigentümer (d. h. die Rolle mit der Berechtigung OWNERSHIP für das Objekt) ist auch Eigentümer des Zielschemas.
Wenn ein Objekt (Tabelle, Spalte usw.) umbenannt wird, müssen andere Objekte, die darauf verweisen, mit dem neuen Namen aktualisiert werden.
SWAP WITH target_dynamic_table_name
Tauscht zwei dynamische Tabellen in einer einzigen Transaktion aus. Die Rolle, mit der diese Operation ausgeführt wird, muss über die Berechtigung OWNERSHIP für beide dynamischen Tabellen verfügen.
Es gelten die folgenden Einschränkungen:
Sie können eine dynamische Tabelle nur mit einer anderen dynamischen Tabelle austauschen.
REFRESH
Legt fest, dass die dynamische Tabelle manuell aktualisiert werden soll.
Sowohl vom Benutzer ausgesetzte als auch automatisch ausgesetzte dynamische Tabellen können manuell aktualisiert werden. Manuell aktualisierte dynamische Tabellen geben MANUAL als Ausgabe für
refresh_trigger
in der Funktion DYNAMIC_TABLE_REFRESH_HISTORY zurück.Beachten Sie, dass die Aktualisierung einer dynamischen Tabelle auch alle vorgelagerten dynamischen Tabellen ab demselben Zeitstempel aktualisiert. Weitere Informationen dazu finden Sie unter Warehouse oder Zielverzögerung einer dynamischen Tabelle ändern.
Weitere Informationen zum Aktualisierungsstatus dynamischer Tabellen finden Sie unter DYNAMIC_TABLE_REFRESH_HISTORY.
SET ...
Gibt eine oder mehrere Eigenschaften/Parameter an, die für die Tabelle festgelegt werden sollen (getrennt durch Leerzeichen, Kommas oder Neue-Zeile-Zeichen):
TARGET_LAG = { num { seconds | minutes | hours | days } | DOWNSTREAM }
Gibt die Zielverzögerung für die dynamische Tabelle an:
'num seconds | minutes | hours | days'
Gibt die maximale Zeitspanne an, die der Inhalt der dynamischen Tabelle hinter den Aktualisierungen der Basistabellen zurückbleiben darf.
Beispiel:
Wenn die Daten in der dynamischen Tabelle nicht mehr als 5 Minuten zurückbleiben sollen, geben Sie
5 minutes
an.Wenn die Daten in der dynamischen Tabelle nicht mehr als 5 Stunden zurückbleiben sollen, geben Sie
5 hours
an.
Der Minimumwert ist 1 Minute. Wenn eine dynamische Tabelle A von einer anderen dynamischen Tabelle B abhängt, muss die minimale Verzögerung für A größer oder gleich der Verzögerung für B sein.
DOWNSTREAM
Gibt an, dass die dynamische Tabelle aktualisiert werden soll, wenn eine ihr nachgelagerte dynamische Tabelle aktualisiert wird.
WAREHOUSE = warehouse_name
Gibt den Namen des Warehouses an, das die Computeressourcen für die Aktualisierung der dynamischen Tabelle bereitstellt.
Der Eigentümer der dynamischen Tabelle muss die USAGE-Berechtigung für dieses Warehouse haben.
DATA_RETENTION_TIME_IN_DAYS = integer
Parameter auf Objektebene, der die Aufbewahrungsfrist der dynamischen Tabelle für Time Travel ändert. Weitere Details dazu finden Sie unter Verstehen und Verwenden von Time Travel und Verwenden von temporären und transienten Tabellen.
Eine ausführliche Beschreibung dieses Parameters sowie weitere Informationen zu Objektparametern finden Sie unter Parameter.
Werte:
Standardausführung:
0
oder1
Enterprise Edition:
0
auf90
für permanente dynamische Tabellen0
oder1
für transiente dynamische Tabellen
Bemerkung
Ein Wert von
0
deaktiviert Time Travel für die dynamische Tabelle.MAX_DATA_EXTENSION_TIME_IN_DAYS = integer
Objektparameter, der die maximale Anzahl von Tagen angibt, für die Snowflake die Datenaufbewahrungsfrist verlängern kann, um zu verhindern, dass Streams auf der dynamischen Tabelle veralten.
Eine detaillierte Beschreibung dieses Parameters finden Sie unter MAX_DATA_EXTENSION_TIME_IN_DAYS.
DEFAULT_DDL_COLLATION = 'collation_specification'
Legt eine Standard-Sortierungsspezifikation für alle neuen Spalten fest, die der dynamischen Tabelle hinzugefügt werden.
Durch das Festlegen dieses Parameters ändert sich nicht die Sortierungsspezifikation für vorhandene Spalten.
Weitere Informationen dazu finden Sie unter DEFAULT_DDL_COLLATION.
UNSET ...
Gibt eine oder mehrere Eigenschaften/Parameter an, die für die dynamische Tabelle nicht festgelegt werden sollen, wodurch sie auf ihre Standardwerte zurückgesetzt werden:
DATA_RETENTION_TIME_IN_DAYS
MAX_DATA_EXTENSION_TIME_IN_DAYS
DEFAULT_DDL_COLLATION
Clustering-Aktionen (clusteringAction
)¶
CLUSTER BY ( expr [ , expr , ... ] )
Gibt eine oder mehrere Tabellenspalten oder Spaltenausdrücke als Gruppierungsschlüssel für die Tabelle an (oder ändert sie). Dies sind die Spalten/Ausdrücke, für die das Clustering mit Automatic Clustering verwaltet wird. Bevor Sie Gruppierungsschlüssel für eine dynamische Tabelle angeben, sollten Sie sich erst mit Mikropartitionen vertraut machen. Weitere Informationen dazu finden Sie unter Grundlegendes zu Tabellenstrukturen in Snowflake.
Bei der Verwendung von Gruppierungsschlüsseln mit dynamischen Tabellen müssen Sie Folgendes beachten:
Spaltendefinitionen sind erforderlich und müssen in der Anweisung ausdrücklich angegeben werden.
Gruppierungsschlüssel sind nicht für alle Tabellen vorgesehen oder empfehlenswert. Sie eignen sich vorrangig für sehr große Tabellen (z. B. im Multi-Terabyte-Bereich).
SUSPEND | RESUME RECLUSTER
Aktiviert oder deaktiviert Automatic Clustering für die dynamische Tabelle.
DROP CLUSTERING KEY
Löscht den Gruppierungsschlüssel für die dynamische Tabelle.
Weitere Informationen zu Gruppierungsschlüsseln und Reclustering finden Sie unter Grundlegendes zu Tabellenstrukturen in Snowflake.
Tabellenkommentaraktionen (tableCommentAction
)¶
ALTER | MODIFY [ ( ]
` .[ COLUMN ] <col1_name> COMMENT '<string>'
., [ COLUMN ] <col1_name> UNSET COMMENT
.[ , ... ]
.[ ) ]
Ändert einen Kommentar oder überschreibt den vorhandenen Kommentar für eine Spalte in der dynamischen Tabelle.
SET | UNSET COMMENT = '<string_literal>'
Fügt einen Kommentar hinzu oder überschreibt den vorhandenen Kommentar für die dynamische Tabelle.
Data-Governance-Richtlinie und Tag-Aktionen (dataGovnPolicyTagAction
)¶
TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]
Gibt den Namen des Tags und den Wert der Tag-Zeichenfolge an.
Der Tag-Wert ist immer eine Zeichenfolge, die maximale 256 Zeichen lang sein kann.
Weitere Informationen zur Angabe von Tags in einer Anweisung finden Sie unter Tag-Kontingente für Objekte und Spalten.
policy_name
Bezeichner für die Richtlinie. Dieser muss für Ihr Konto eindeutig sein.
ADD ROW ACCESS POLICY policy_name ON (col_name [ , ... ])
Fügt der dynamischen Tabelle eine Zeilenzugriffsrichtlinie hinzu.
Es muss mindestens ein Spaltenname angegeben werden. Zusätzliche Spalten können mit einem Komma zwischen den einzelnen Spaltennamen angegeben werden.
DROP ROW ACCESS POLICY policy_name
Löscht eine Zeilenzugriffsrichtlinie aus der dynamischen Tabelle.
DROP ROW ACCESS POLICY policy_name, ADD ROW ACCESS POLICY policy_name ON ( col_name [ , ... ] )
Löscht mit nur einer einzigen SQL-Anweisung die für die dynamische Tabelle festgelegte Zeilenzugriffsrichtlinie und fügt eine Zeilenzugriffsrichtlinie zu derselben dynamischen Tabelle hinzu.
DROP ALL ROW ACCESS POLICIES
Löscht alle Zuordnungen von Zeilenzugriffsrichtlinien aus der dynamischen Tabelle.
{ ALTER | MODIFY } [ COLUMN ] ...
USING ( col_name , cond_col_1 ... )
Gibt die Argumente an, die an die bedingte Maskierungsrichtlinie übergeben werden sollen.
Die erste Spalte in der Liste gibt die Daten an, die aufgrund der Richtlinienbedingungen maskiert oder mit Token versehen werden sollen. muss mit der Spalte übereinstimmen, auf die die Maskierungsrichtlinie angewendet wird.
Die zusätzlichen Spalten geben an, welche Daten zur Maskierung oder Tokenisierung in jeder Zeile des Abfrageergebnisses ausgewertet werden sollen, wenn die Auswahl aus der ersten Spalte erfolgt.
Wenn die USING-Klausel weggelassen wird, behandelt Snowflake die bedingte Maskierungsrichtlinie wie eine normale Maskierungsrichtlinie.
FORCE
Ersetzt mit nur einer Anweisung eine Maskierungs- oder Projektionsrichtlinie, die derzeit für eine Spalte festgelegt ist, durch eine andere Richtlinie.
Beachten Sie, dass die Verwendung des Schlüsselworts
FORCE
mit einer Maskierungsrichtlinie voraussetzt, dass der Datentyp der Richtlinie in der ALTER DYNAMICTABLE-Anweisung (d. h. STRING) mit dem Datentyp der aktuell für die Spalte festgelegten Maskierungsrichtlinie (d. h. STRING) übereinstimmt.Wenn für die Spalte derzeit keine Maskierungsrichtlinie festgelegt ist, hat die Angabe dieses Schlüsselworts keine Auswirkungen.
Weitere Details dazu finden Sie unter Maskierungsrichtlinie auf einer Spalte ersetzen oder Projektionsrichtlinie ersetzen.
Suchoptimierungsaktionen (searchOptimizationAction
)¶
ADD SEARCH OPTIMIZATION
Fügt die Suchoptimierung für die gesamte dynamische Tabelle oder, wenn Sie die optionale Klausel
ON
angeben, für bestimmte Spalten hinzu.Die Wartung der Suchoptimierung kann teuer werden, insbesondere wenn sich die Daten in der Tabelle häufig ändern. Weitere Informationen dazu finden Sie unter Abschätzen und Verwalten der Kosten für die Suchoptimierung.
ON search_method_with_target [, search_method_with_target ... ]
Gibt an, dass Sie die Suchoptimierung für bestimmte Spalten oder VARIANT-Felder (und nicht für die gesamte dynamische Tabelle) konfigurieren möchten.
Verwenden Sie für
search_method_with_target
einen Ausdruck mit der folgenden Syntax:<search_method>(<target> [, ...])
Wobei:
search_method
gibt eine der folgenden Methoden an, die Abfragen für einen bestimmten Prädikatstyp optimieren:GEO
: Prädikate, die GEOGRAPHY-Typen verwendenSUBSTRING
: Prädikate, die mit Teilzeichenfolgen und regulären Ausdrücken übereinstimmen (z. B.. [ NOT ] LIKE, [ NOT ] ILIKE, [ NOT ] RLIKE, REGEXP_LIKE usw.)EQUALITY
: Gleichheits- und IN-Prädikate
target
gibt die Spalte, das VARIANT-Feld oder ein Sternchen (*) an.Je nach dem Wert von
search_method
können Sie eine Spalte oder ein VARIANT-Feld eines der folgenden Typen angeben:GEO
: Spalten vom Datentyp GEOGRAPHYSUBSTRING
: Spalten mit Zeichenfolgen- oder VARIANT-Datentypen, einschließlich Pfaden zu Feldern in VARIANTs. Geben Sie Pfade zu Feldern an, wie unterEQUALITY
beschrieben. Die Suche nach verschachtelten Feldern wird auf die gleiche Weise verbessert.EQUALITY
: Spalten mit numerischen, binären, Zeichenfolgen- und VARIANT-Datentypen, einschließlich Pfade zu Feldern in VARIANT-Spalten.Um ein VARIANT-Feld anzugeben, verwenden Sie die Punkt- oder Klammerschreibweise. Beispiel:
my_column:my_field_name.my_nested_field_name
my_column['my_field_name']['my_nested_field_name']
Sie können auch einen durch Doppelpunkte getrennten Pfad zum Feld verwenden. Beispiel:
my_column:my_field_name:my_nested_field_name
Wenn Sie ein VARIANT-Feld angeben, gilt die Konfiguration für alle verschachtelten Felder unter diesem Feld.
So geben Sie beispielsweise
ON EQUALITY(src:a.b)
an:Diese Konfiguration kann Abfragen verbessern
on src:a.b
und auf allen verschachtelten Feldern (z. B.src:a.b.c
,src:a.b.c.d
usw.).Diese Konfiguration betrifft nur Abfragen, die das Präfix
src:a.b
verwenden (z. B.src:a
,src:z
usw.).
Um alle zutreffenden Spalten in der Tabelle als Ziele anzugeben, verwenden Sie das Sternchen (
*
).Beachten Sie, dass Sie für eine gegebene Suchmethode nicht sowohl Sternchen als auch spezifische Spaltennamen angeben können. Sie können jedoch Sternchen bei verschiedenen Suchmethoden angeben.
Sie können zum Beispiel die folgenden Ausdrücke angeben:
ON SUBSTRING(*) ON EQUALITY(*), SUBSTRING(*), GEO(*)
Sie können die folgenden Ausdrücke nicht angeben:
ON EQUALITY(*, c1) ON EQUALITY(c1, *) ON EQUALITY(v1:path, *) ON EQUALITY(c1), EQUALITY(*)
Wenn Sie mehr als eine Suchmethode für ein Ziel angeben möchten, trennen Sie jede nachfolgende Methode und jedes Ziel durch ein Komma:
ALTER DYNAMIC TABLE product ADD SEARCH OPTIMIZATION ON EQUALITY(c1), EQUALITY(c2, c3);
Wenn Sie den Befehl ALTER DYNAMICTABLE … ADD SEARCH OPTIMIZATION ON … mehrfach für dieselbe Tabelle ausführen, wird jeder nachfolgende Befehl zu der bestehenden Konfiguration der Tabelle hinzugefügt. Nehmen Sie zum Beispiel an, dass Sie die folgenden Befehle ausführen:
ALTER DYNAMIC TABLE product ADD SEARCH OPTIMIZATION ON EQUALITY(c1, c2); ALTER DYNAMIC TABLE product ADD SEARCH OPTIMIZATION ON EQUALITY(c3, c4);
Dadurch werden der Konfiguration für die Tabelle Gleichheitsprädikate für die Spalten
c1
,c2
,c3
undc4
hinzugefügt. Dies ist gleichbedeutend mit der Ausführung des Befehls:ALTER DYNAMIC TABLE product ADD SEARCH OPTIMIZATION ON EQUALITY(c1, c2, c3, c4);
Weitere Beispiele finden Sie unter Aktivieren der Suchoptimierung für bestimmte Spalten.
DROP SEARCH OPTIMIZATION
Entfernt die Suchoptimierung von der gesamten dynamischen Tabelle oder bei Angabe der optionalen
ON
-Klausel von bestimmten Spalten.Es gelten die folgenden Einschränkungen:
Wenn eine dynamische Tabelle die Suchoptimierungseigenschaft hat, bleibt die Suchoptimierungseigenschaft erhalten, wenn Sie die dynamische Tabelle löschen und entfernen.
Das Entfernen der Suchoptimierungseigenschaft aus einer dynamischen Tabelle und das anschließende Hinzufügen verursachen die gleichen Kosten wie das erstmalige Hinzufügen.
ON search_method_with_target | column_name | expression_id [, ... ]
Gibt an, dass Sie die Suchoptimierungskonfiguration von bestimmte Spalten oder VARIANT-Feldern (und nicht von der gesamten dynamischen Tabelle) entfernen möchten.
Um die zu löschende Spaltenkonfiguration zu identifizieren, verwenden Sie eine der folgenden Optionen:
Geben Sie für
search_method_with_target
eine Methode zur Optimierung von Abfragen für ein oder mehrere bestimmte Ziele an, die Spalten oder VARIANT-Felder sein können. Verwenden Sie die oben beschriebene Syntax.Geben Sie für
column_name
den Namen der für die Suchoptimierung konfigurierten Spalte an. Durch die Angabe des Spaltennamens werden alle Ausdrücke für diese Spalte gelöscht, einschließlich der Ausdrücke, die VARIANT-Felder in der Spalte verwenden.Geben Sie für
expression_id
die ID eines Ausdrucks an, der in der Ausgabe des Befehls DESCRIBE SEARCH OPTIMIZATION aufgeführt ist.
Sie können beliebige Kombinationen von Suchmethoden mit Zielen, Spaltennamen und Ausdruck-IDs angeben und dabei ein Komma zwischen den Elementen verwenden.
Weitere Beispiele finden Sie unter Löschen der Suchoptimierung für bestimmte Spalten.
Nutzungshinweise¶
Um eine dynamische Tabelle zu ändern, müssen Sie eine Rolle verwenden, die über die OPERATE-Berechtigung für die dynamische Tabelle verfügt. Allgemeine Informationen dazu finden Sie unter Berechtigung zum Anzeigen der Metadaten einer dynamischen Tabelle.
Sie können keine Änderungen an der Maskierungsrichtlinie vornehmen, nachdem Sie die dynamische Tabelle erstellt haben.
Wenn Sie eine bestehende dynamische Tabelle aktualisieren möchten und dazu deren aktuelle Definition anzeigen müssen, rufen Sie die Funktion GET_DDL auf.
Sie können die Datenmetrikfunktionen mit dynamischen Tabellen verwenden, indem Sie den Befehl ALTER TABLE ausführen. Weitere Informationen dazu finden Sie unter Verwenden von Datenmetrikfunktionen.
Sie können IDENTIFIER() nicht verwenden, um den Namen der zu ändernden dynamischen Tabelle anzugeben. Zum Beispiel wird die folgende Anweisung nicht unterstützt:
ALTER DYNAMIC TABLE IDENTIFIER(product) SUSPEND;
Hinweis zu Metadaten:
Achtung
Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.
Beispiele¶
Ändern der Zielverzögerungszeit einer dynamischen Tabelle namens product
auf 1 Stunde:
ALTER DYNAMIC TABLE product SET TARGET_LAG = '1 hour';
Angeben der nachgelagerte Zielverzögerung für eine dynamische Tabelle namens product
:
ALTER DYNAMIC TABLE product SET TARGET_LAG = DOWNSTREAM;
Anhalten der dynamischen Tabelle product
:
ALTER DYNAMIC TABLE product SUSPEND;
Fortsetzen der dynamischen Tabelle product
:
ALTER DYNAMIC TABLE product RESUME;
Umbenennen der dynamischen Tabelle product
:
ALTER DYNAMIC TABLE product RENAME TO updated_product;
Austauschen der dynamischen Tabelle product
mit new-product
:
ALTER DYNAMIC TABLE product SWAP WITH new_product;
Ändern des Gruppierungsschlüssels einer Tabelle:
ALTER DYNAMIC TABLE product CLUSTER BY (date);
Entfernen des Clusterings aus einer Tabelle:
ALTER DYNAMIC TABLE product DROP CLUSTERING KEY;