All pages
Powered by GitBook
1 of 1

UUID_SHORT

Syntax

UUID_SHORT()

Description

Returns a "short" universally unique identifier as a 64-bit unsigned integer (rather than a string-form 128-bit identifier as returned by the UUID() function).

The value of UUID_SHORT() is guaranteed to be unique if the following conditions hold:

  • The server_id of the current host is unique among your set of master and replica servers.

  • server_id is between 0 and 255.

  • You don't set back your system time for your server between mariadbd restarts.

  • You do not invoke UUID_SHORT() on average more than 16 million times per second between mariadbd restarts

The UUID_SHORT() return value is constructed this way:

(server_id & 255) << 56
+ (server_startup_time_in_seconds << 24)
+ incremented_variable++;

Statements using the UUID_SHORT() function are not safe for statement-based replication.

Examples

SELECT UUID_SHORT();
+-------------------+
| UUID_SHORT()      |
+-------------------+
| 21517162376069120 |
+-------------------+
CREATE TABLE t1 (a BIGINT UNSIGNED DEFAULT(uuid_short()) PRIMARY KEY);
INSERT INTO t1 VALUES(),();
SELECT * FROM t1;
+-------------------+
| a                 |
+-------------------+
| 98113699159474176 |
| 98113699159474177 |
+-------------------+

See Also

  • UUID() ; Return full (128 bit) Universally Unique Identifier

  • AUTO_INCREMENT

  • Sequences - an alternative to auto_increment available from MariaDB 10.3

  • SYS_GUID - UUID without the - character for Oracle compatibility

  • UUID data type

This page is licensed: GPLv2, originally from fill_help_tables.sql