CREATE-TYPE¶
Erstellt einen benutzerdefinierten Typ.
- Siehe auch:
ALTER-TYPE, DESCRIBE-TYPE, SHOW-TYPES, DROP-TYPE, UNDROP-TYPE
Syntax¶
Erforderliche Parameter¶
nameGibt den Bezeichner für den benutzerdefinierten Typ an. Dieser muss für das Schema, in dem der benutzerdefinierte Typ erstellt wird, eindeutig sein.
Der Name darf nicht mit dem Namen eines Snowflake-Typs identisch sein. Der Typname darf zum Beispiel nicht
arrayodergeometrylauten.Wenn der Name derselbe ist wie eine:doc:
Snowflake-Schlüsselwort </sql-reference/reserved-keywords>, muss er in doppelten Anführungszeichen angegeben werden.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 Informationen dazu finden Sie unter Anforderungen an Bezeichner.
AS typeEine vorhandene Definition für einen Snowflake-Datentyp.
Die angegebene Typdefinition ist der Basistyp für den zu erstellenden benutzerdefinierten Typ.
typekann kein anderer benutzerdefinierter Typ sein.
Optionale Parameter¶
COMMENT = 'string_literal'Gibt einen Kommentar für den benutzerdefinierten Typ an.
Standard: Kein Wert
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieser Operation verwendet wird, muss mindestens die folgenden Berechtigungen haben:
Berechtigung |
Objekt |
Anmerkungen |
|---|---|---|
CREATE-TYPE |
Schema |
Für das Ausführen von Operationen für ein Objekt in einem Schema ist mindestens eine Berechtigung für die übergeordnete Datenbank und mindestens eine Berechtigung für das übergeordnete Schema erforderlich.
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe 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.
Nutzungshinweise¶
Die Klauseln OR REPLACE und IF NOT EXISTS schließen sich gegenseitig aus. Sie können nicht beide in der gleichen Anweisung verwendet werden.
CREATE OR REPLACE <Objekt>-Anweisungen sind atomar. Das heißt, wenn ein Objekt ersetzt wird, erfolgt das Löschen des alten Objekts und das Erstellen des neuen Objekts in einer einzigen Transaktion.
Metadaten:
Achtung
Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „User“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.
Beispiele¶
Verwenden Sie den Befehl CREATETYPE, um einen benutzerdefinierten Typ zu erstellen, der auf dem NUMBER-Datentyp basiert:
Erstellen eines benutzerdefinierten Typs auf Grundlage des OBJECT-Datentyps:
Weitere Beispiele finden Sie unter Beispiele für benutzerdefinierte Datentypen.