CREATE OR ALTER VERSIONED SCHEMA

Erstellt ein neues versioniertes Schema oder ändert ein vorhandenes versioniertes Schema. Dieser Befehl wird nur für Anwendungsinstanzen im Native Apps Framework unterstützt.

Siehe auch:

CREATE APPLICATION, CREATE APPLICATION PACKAGE

Syntax

CREATE OR ALTER VERSIONED SCHEMA <name>
  [ WITH MANAGED ACCESS ]
  [ DATA_RETENTION_TIME_IN_DAYS = ]
  [ MAX_DATA_EXTENSION_TIME_IN_DAYS = ]
  [ DEFAULT_DDL_COLLATION = '<collation_specification>' ]
  [ COMMENT = '<string_literal>' ]
Copy

Erforderliche Parameter

name

Gibt den Bezeichner für das Schema an. Dieser muss für die Anwendungsinstanz, in der das Schema erstellt wird, eindeutig sein.

Darüber hinaus muss der Bezeichner mit einem Buchstaben beginnen und darf keine Leer- oder Sonderzeichen enthalten, es sei denn, die gesamte Bezeichnerzeichenfolge wird in doppelte Anführungszeichen gesetzt (z. B. "My object"). Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß-/Kleinschreibung zu beachten.

Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.

Optionale Parameter

WITH MANAGED ACCESS

Gibt ein verwaltetes, versioniertes Schema an. Verwaltete, versionierte Zugriffsschemas zentralisieren die Berechtigungsverwaltung für den Schemaeigentümer.

In regulären versionierten Schemas kann der Eigentümer eines Objekts (d. h. die Rolle, die über die Berechtigung OWNERSHIP für das Objekt verfügt) anderen Rollen Berechtigungen für seine Objekte erteilen.

In verwalteten Schemas verwaltet der Schemabesitzer alle Berechtigungszuweisungen, einschließlich zukünftiger Zuweisungen, für Objekte im Schema. Objekteigentümer behalten die OWNERSHIP-Berechtigung für die Objekte. Berechtigungszuweisungen für die Objekte können jedoch nur vom Schemaeigentümer verwaltet werden.

DATA_RETENTION_TIME_IN_DAYS = integer

Gibt die Anzahl der Tage an, für die Time Travel-Aktionen (CLONE und UNDROP) auf dem Schema ausgeführt werden können, sowie die standardmäßige Time Travel-Aufbewahrungsdauer für alle im Schema erstellten Tabellen. Weitere Informationen dazu finden Sie unter Verstehen und Verwenden von Time Travel.

Eine ausführliche Beschreibung dieses Parameters auf Objektebene sowie weitere Informationen zu Objektparametern finden Sie unter Parameter. Weitere Informationen zur Aufbewahrungsdauer auf Tabellenebene finden Sie unter CREATE TABLE und Verstehen und Verwenden von Time Travel.

Werte:

  • Standardausführung: 0 oder 1

  • Enterprise Edition:

    • 0 bis 90 für permanente Schemata

    • 0 oder 1 für transiente Schemata

Standard:

  • Standardausführung: 1

  • Enterprise Edition (oder höher): 1 (es sei denn, auf Datenbank- oder Kontoebene wurde ein anderer Standardwert angegeben)

Bemerkung

Der Wert 0 deaktiviert effektiv Time Travel für das Schema.

MAX_DATA_EXTENSION_TIME_IN_DAYS = integer

Objektparameter, der die maximale Anzahl von Tagen angibt, für die Snowflake die Datenaufbewahrungsfrist für Tabellen im Schema verlängern kann, um zu verhindern, dass Streams auf den Tabellen veraltet sind.

Eine detaillierte Beschreibung dieses Parameters finden Sie unter MAX_DATA_EXTENSION_TIME_IN_DAYS.

DEFAULT_DDL_COLLATION = 'collation_specification'

Gibt eine Standardsortierungsspezifikation für alle dem Schema hinzugefügten Tabellen an. Der Standardwert kann auf der Ebene der einzelnen Tabellen überschrieben werden.

Weitere Informationen zu diesem Parameter finden Sie unter DEFAULT_DDL_COLLATION.

COMMENT = 'string_literal'

Gibt einen Kommentar zum Schema an.

Standard: Kein Wert

Anforderungen an die Zugriffssteuerung

Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens die folgenden Berechtigungen haben:

Berechtigung

Objekt

Anmerkungen

CREATE SCHEMA

Anwendung

Wenn das Schema bereits vorhanden ist und Sie das Schema ändern möchten, benötigen Sie die Berechtigung OWNERSHIP für die Anwendung.

Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einem bestimmten Satz von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.

Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.

Bemerkung

Während Sie normalerweise ein versioniertes Schema im Setup-Skript erstellen, kann ein versioniertes Schema auch wie folgt erstellt werden:

  • Über eine gespeicherte Prozedur mit Eigentümerrechten

  • Im Verbraucherkonto mit einer Anwendungsrolle, die über die Berechtigung CREATE SCHEMA für die Anwendung verfügt.

Nutzungshinweise

  • Wenn das Schema nicht vorhanden ist, erstellt Snowflake ein versioniertes Schema.

  • Wenn das Schema vorhanden ist und bereits mit dem Befehl übereinstimmt, betrachtet Snowflake dies als eine Nicht-Operation.

  • Wenn das Schema vorhanden ist, aber nicht mit dem Befehl übereinstimmt, ändert Snowflake das versionierte Schema, damit es mit dem Befehl übereinstimmt.