DROP SEQUENCE

Entfernt eine Sequenz aus dem aktuellen/angegebenen Schema.

Siehe auch:

CREATE SEQUENCE, ALTER SEQUENCE, SHOW SEQUENCES, DESCRIBE SEQUENCE

Syntax

DROP SEQUENCE [ IF EXISTS ] <name> [ CASCADE | RESTRICT ]
Copy

Parameter

name

Gibt den Bezeichner der zu löschenden Sequenz an.

Wenn der Sequenzbezeichner nicht vollqualifiziert ist (in der Form db_name.schema_name.sequence_name oder schema_name.sequence_name), sucht der Befehl die Sequenz im aktuellen Schema der Sitzung.

CASCADE | RESTRICT

Snowflake lässt die Schlüsselwörter CASCADE und RESTRICT syntaktisch zu, reagiert aber nicht auf diese. Wenn Sie beispielsweise eine Sequenz mit dem Schlüsselwort CASCADE löschen, wird keine Tabelle gelöscht, die die Sequenz verwendet. Das Löschen einer Sequenz mit dem Schlüsselwort RESTRICT gibt keine Warnung aus, wenn die Sequenz noch von einer Tabelle verwendet wird.

Nutzungshinweise

  • Um eine Sequenz zu löschen, müssen Sie eine Rolle verwenden, die Eigentümerrechte für die Sequenz besitzt.

  • Nach dem Löschen einer Sequenz wird beim Erstellen einer Sequenz mit dem gleichen Namen eine neue Version der Datenbank angelegt. Die neue Sequenz setzt die Generierung von Nummern nicht dort fort, wo die alte Sequenz aufgehört hat.

  • Stellen Sie vor dem Löschen einer Sequenz sicher, dass keine Tabellen oder andere Datenbankobjekte auf die Sequenz verweisen.

  • Wenn auf die gelöschte Sequenz in der DEFAULT-Klausel einer Tabelle verwiesen wurde, führt der Aufruf von GET_DDL() für diese Tabelle (anders als die DDL zum Erstellen der Tabelle) zu einem Fehler.

Beispiele

Löschen einer Sequenz:

DROP SEQUENCE IF EXISTS invoice_sequence_number;
Copy