Datentyp UUID¶
Der UUID-Datentyp speichert universell eindeutige Bezeichner (UUIDs). Ein UUID ist ein 128-Bit-Binärwert, der Informationen eindeutig identifiziert. Jeder UUID-Wert ist so konzipiert, dass er weltweit eindeutig ist, was bedeutet, dass die Wahrscheinlichkeit, dass zwei verschiedene Systeme unabhängig voneinander genau dieselbe UUID generieren, sehr gering ist. Die Eindeutigkeit hängt jedoch davon ab, wie die UUID-Werte generiert werden, und der Datentyp UUID von Snowflake selbst garantiert keine Eindeutigkeit. Ein benutzende Person kann zum Beispiel denselben UUID-Wert mehrfach ohne Fehler einfügen.
UUID-Werte liegen im UUID-Format vor, einer 36-stelligen Zeichenfolge aus hexadezimalen Ziffern, die durch Bindestriche getrennt sind, im Muster 8-4-4-4-12. Beispiel: f353ca91-4fc5-49f2-9b9e-304f83d11914 ist eine Zeichenfolge im UUID-Format.
Weitere Informationen über den Datentyp UUID finden Sie im Wikipedia-Artikel Universally unique identifier.
Die folgenden Hinweise gelten für den Datentyp UUID:
Snowflake-Treiber behandeln UUID-Werte als Textzeichenfolgen.
Die ANSI-Literalform von UUID wird als Eingabe unterstützt.
UUID-Werte einer beliebigen Version können in Tabellen eingefügt werden.
Bei UUID-Werten wird nicht zwischen Groß- und Kleinschreibung unterschieden.
Angeben eines UUID-Datentyps¶
Um einen UUID-Typ anzugeben, verwenden Sie die folgende Syntax:
<column_name> UUID
Wobei:
column_nameist der Name einer Spalte in einer Tabelle.
Einschränkungen für den UUID-Datentyp¶
Die folgenden Einschränkungen gelten für den UUID-Datentyp:
Der UUID-Wert kann nicht als Wert eines semistrukturierten Datentyps oder strukturierten Datentyps gespeichert werden.
Um einen UUID-Wert als Wert einer Zeichenfolge für einen dieser Typen zu speichern, können Sie cast (Umwandlung) des UUID-Werts in einen VARCHAR-Wert verwenden.
Der UUID-Datentyp wird in gespeicherten Prozeduren oder benutzerdefinierten Funktionen (UDFs), die in einer anderen Sprache als SQL geschrieben sind (wie Python oder Java), nicht unterstützt.
Der UUID-Datentyp wird in Snowpark nicht unterstützt.
Die folgenden Features unterstützen den UUID-Datentyp nicht:
Beispiele für den UUID-Datentyp¶
Die folgenden Beispiele fügen UUID-Werte in Tabellen ein:
Einfügen eines UUID-Werts in eine Tabelle¶
Erstellen Sie eine Tabelle mit einer Spalte vom Typ UUID und fügen Sie einen UUID-Wert ein:
CREATE TABLE sample_uuid_table(uuid_col UUID); INSERT INTO sample_uuid_table VALUES ('c73d9175-0a1d-48c6-8d30-df165461328b');
Automatisches Generieren von UUID-Werten, wenn Sie Zeilen in eine Tabelle einfügen¶
Das folgende Beispiel zeigt Ihnen, wie Sie automatisch UUID-Werte generieren, wenn Sie Zeilen in eine Tabelle einfügen:
Erstellen Sie eine Tabelle, die die UUID_STRING-Funktion zum Generieren eines UUID-Werts für jede in die Tabelle eingefügte Zeile verwendet:
CREATE OR REPLACE TABLE sample_generate_uuid ( id UUID DEFAULT UUID_STRING() NOT NULL, sample_column VARCHAR);
Fügen Sie Werte in die Tabelle ein und lassen Sie die
id-Spalte weg, sodass ein UUID-Wert automatisch generiert und eingefügt wird:INSERT INTO sample_generate_uuid (sample_column) VALUES ('value_a'), ('value_b');
Fragen Sie die Tabelle ab, um die generierten UUID-Werte anzuzeigen:
SELECT * FROM sample_generate_uuid;
+--------------------------------------+---------------+ | ID | SAMPLE_COLUMN | |--------------------------------------+---------------| | f353ca91-4fc5-49f2-9b9e-304f83d11914 | value_a | | da563283-e201-4744-b158-221dd204a61f | value_b | +--------------------------------------+---------------+