UUID_SHORT
Синтаксис
UUID_SHORT()
Описание
Возвращает «короткое» универсальное уникальное идентификатор как 64-битное беззнаковое целое число (вместо строкового 128-битного идентификатора, возвращаемого функцией UUID()).
Значение UUID_SHORT() гарантируется уникальным, если выполняются следующие условия:
- Идентификатор сервера текущего хоста уникален среди вашего набора мастер- и slave-серверов
-
server_idнаходится в диапазоне от 0 до 255 - Вы не изменяете системное время сервера между перезапусками mysqld
- Вы не вызываете
UUID_SHORT()в среднем более 16 миллионов раз в секунду между перезапусками mysqld
Значение, возвращаемое функцией UUID_SHORT(), формируется следующим образом:
(server_id & 255) << 56 + (server_startup_time_in_seconds << 24) + incremented_variable++;
Заявления, использующие функцию UUID_SHORT(), не являются безопасными для репликации на основе заявлений.
Примеры
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 | +-------------------+
См. также
- UUID() ; Возвращает полный (128-битный) универсальный уникальный идентификатор
- AUTO_INCREMENT
- Последовательности - альтернатива auto_increment, доступная начиная с MariaDB 10.3
-
SYS_GUID - UUID без символа
-для совместимости с Oracle - Тип данных UUID
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проходит предварительной проверки MariaDB. Мнения, информация и мнения, выраженные в этом содержимом, не обязательно отражают точку зрения MariaDB или любой другой стороны.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/uuid_short/