In MariaDB, UUID_SHORT() is een ingebouwde functie die een korte Universal Unique Identifier (UUID) retourneert.
Het retourneert een 64-bits geheel getal zonder teken (in tegenstelling tot de tekenreeks-vorm 128-bits identifier zoals geretourneerd door de UUID() functie).
Syntaxis
De syntaxis gaat als volgt:
UUID_SHORT() Er zijn dus geen argumenten vereist (of geaccepteerd).
Voorbeeld
Hier is een voorbeeld om te demonstreren:
SELECT UUID_SHORT(); Resultaat:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162560 | +-------------------+
Als ik het een andere keer roep, krijg ik een andere waarde:
SELECT UUID_SHORT(); Resultaat:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162561 | +-------------------+
Over het resultaat
De waarde die wordt geretourneerd door UUID_SHORT() is gegarandeerd uniek als aan de volgende voorwaarden wordt voldaan:
- De
server_idvan de huidige host is uniek onder uw set master- en slave-servers server_idligt tussen0en255- U stelt uw systeemtijd voor uw server niet terug tussen
mysqldherstart - Je roept
UUID_SHORT()niet aan gemiddeld meer dan 16 miljoen keer per seconde tussenmysqldherstart
Merk op dat instructies met de UUID_SHORT() functie zijn niet veilig voor replicatie op basis van instructies.
Vergeleken met de UUID() Functie
Het resultaat geretourneerd door UUID_SHORT() is vergelijkbaar met degene die wordt geretourneerd door de UUID() functie, behalve dat het resultaat geretourneerd door UUID() is een 128-bits getal dat wordt weergegeven door een utf8-reeks van vijf hexadecimale getallen in aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee formaat.
Hier is een vergelijking van de twee:
SELECT
UUID(),
UUID_SHORT(); Resultaat:
+--------------------------------------+-------------------+ | UUID() | UUID_SHORT() | +--------------------------------------+-------------------+ | e67d0fc6-cd8d-11eb-be04-88e9fe739f3d | 99291717236162562 | +--------------------------------------+-------------------+
Daarnaast, van MariaDB 10.6.1, een SYS_GUID() functie is toegevoegd om de compatibiliteit met Oracle te verbeteren.
Geen argumenten
Zoals vermeld, UUID_SHORT() accepteert geen argumenten. Dit is wat er gebeurt als ik een argument doorgeef:
SELECT UUID_SHORT(3); Resultaat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'UUID_SHORT'