I MariaDB, UUID_SHORT() er en indbygget funktion, der returnerer en kort Universal Unique Identifier (UUID).
Det returnerer et 64-bit usigneret heltal (i modsætning til strengformede 128-bit identifikator som returneret af UUID() funktion).
Syntaks
Syntaksen ser sådan ud:
UUID_SHORT() Så der kræves ingen argumenter (eller accepteres).
Eksempel
Her er et eksempel til demonstration:
SELECT UUID_SHORT(); Resultat:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162560 | +-------------------+
Hvis jeg kalder det en anden gang, får jeg en anden værdi:
SELECT UUID_SHORT(); Resultat:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162561 | +-------------------+
Om resultatet
Værdien returneret af UUID_SHORT() er garanteret unik, hvis følgende betingelser er sande:
server_idaf den aktuelle vært er unik blandt dit sæt master- og slaveservereserver_ider mellem0og255- Du sætter ikke din systemtid tilbage for din server mellem
mysqldgenstarter - Du påberåber dig ikke
UUID_SHORT()i gennemsnit mere end 16 millioner gange i sekundet mellemmysqldgenstarter
Bemærk, at sætninger bruger UUID_SHORT() funktion er ikke sikre til sætningsbaseret replikering.
Sammenlignet med UUID() Funktion
Resultatet returneret af UUID_SHORT() ligner den, der returneres af UUID() funktion, bortset fra at resultatet returneres af UUID() er et 128-bit tal repræsenteret af en utf8-streng med fem hexadecimale tal i aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee format.
Her er en sammenligning af de to:
SELECT
UUID(),
UUID_SHORT(); Resultat:
+--------------------------------------+-------------------+ | UUID() | UUID_SHORT() | +--------------------------------------+-------------------+ | e67d0fc6-cd8d-11eb-be04-88e9fe739f3d | 99291717236162562 | +--------------------------------------+-------------------+
Ud over dette, fra MariaDB 10.6.1, en SYS_GUID() funktion er blevet tilføjet for at forbedre Oracle-kompatibiliteten.
Ingen argumenter
Som nævnt, UUID_SHORT() accepterer ingen argumenter. Her er, hvad der sker, når jeg sender et argument:
SELECT UUID_SHORT(3); Resultat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'UUID_SHORT'