ALTER DYNAMIC TABLE¶
Ändert die Eigenschaften einer dynamischen Tabelle.
Unter diesem Thema:
Syntax¶
ALTER DYNAMIC TABLE <name> { SUSPEND | RESUME }
ALTER DYNAMIC TABLE <name> REFRESH
ALTER DYNAMIC TABLE <name> SET
[ TARGET_LAG = { '<num> { seconds | minutes | hours | days }' | DOWNSTREAM } ]
[ WAREHOUSE = <warehouse_name> ]
Parameter¶
name
Bezeichner für die zu ändernde 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.
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.
Weitere Informationen zum Anzeigen des Status dynamischer Tabellen finden Sie unter Nutzungshinweise.
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. Bei manuell aktualisierten dynamischen Tabellen wird MANUAL als Aktualisierungsaktivität angezeigt.
Weitere Informationen zum Anzeigen des Status dynamischer Tabellen finden Sie unter Nutzungshinweise. Weitere Informationen zum Aktualisierungsstatus dynamischer Tabellen finden Sie in der Spalte REFRESH_TRIGGER von 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 Verzö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 die 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 muss, wenn ein nachgelagerter Vorgänger aktualisiert wird.
WAREHOUSE = warehouse_name
Gibt den Namen des Warehouses an, das die Computeressourcen für die Aktualisierung der dynamischen Tabelle bereitstellt.
Sie müssen über die Berechtigung USAGE für dieses Warehouse verfügen, um die dynamische Tabelle erstellen zu können.
Nutzungshinweise¶
Um eine dynamische Tabelle zu ändern, müssen Sie eine Rolle verwenden, die über die OPERATE-Berechtigung für die Tabelle verfügt.
Nachdem Sie eine dynamische Tabelle erstellt haben, können Sie keine Änderungen an der Maskierungsrichtlinie mehr vornehmen.
Wenn Sie eine bestehende dynamische Tabelle aktualisieren möchten und dazu deren aktuelle Definition anzeigen müssen, rufen Sie die Funktion GET_DDL auf.
Eine Liste der Status von dynamischen Tabellen finden Sie unter Status dynamischer Tabellen.
Zum Anzeigen von Informationen zu einer dynamischen Tabelle haben Sie folgende Möglichkeiten:
Öffnen Sie Snowsight, und wählen Sie Monitoring » Dynamic Tables aus.
Rufen Sie die Funktion DYNAMIC_TABLE_GRAPH_HISTORY auf, und prüfen Sie die Ergebnisse.
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 Sie die Verzögerungszeit einer dynamischen Tabelle namens product
auf 1 Stunde:
ALTER DYNAMIC TABLE product SET TARGET_LAG = '1 hour';