Función UUID() en MySQL

Esta función en MySQL se usa para devolver un identificador único universal (UUID) generado de acuerdo con RFC 4122, «Un espacio de nombres URN de identificador único universal (UUID)». Está diseñado como un número universalmente único. Se espera que dos valores UUID sean distintos, incluso si se generan en dos servidores independientes. En MySQL, un valor UUID es un número de 128 bits representado como una string utf8, y el formato en número hexadecimal será el siguiente.

Ejemplo –

aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee

Aquí, los tres primeros números se generan a partir de las partes baja, media y alta de una marca de tiempo. Como puede ver, en el formato anterior, el código de dígitos del cuarto lugar conservará la unicidad temporal y el código del quinto lugar proporcionará unicidad espacial y es un número de Node IEEE 802.

Sintaxis:

UUID()

Parámetro:
Este método no tiene ningún parámetro.
Devoluciones:
devuelve un número de identificador único universal.

Ejemplo-1:
Generación de un valor de identificador único universal con la ayuda de la función UUID.

SELECT UUID() 
AS UUID_Value ;

Producción :

UUID_VALUE
fbe516f6-3e39-11eb-b897-0862660ccbd4

Ejemplo-2:
siempre que usemos la función UUID obtendremos un valor de identificador único universal diferente. Vamos a comprobarlo.

  SELECT UUID() 
AS  
UUID_VALUE1, 
UUID() 
AS UUID_VALUE2, 
UUID() 
AS UUID_VALUE3 ;

Producción :

UUID_VALUE1 UUID_VALUE2 UUID_VALUE3
e762634c-3e41-11eb-b897-0862660ccbd4 e7626367-3e41-11eb-b897-0862660ccbd4 e7626368-3e41-11eb-b897-0862660ccbd4

Ejemplo-3:
En este ejemplo, usaremos UUID como clave principal en una tabla. Para demostrarlo, cree una tabla llamada OrderDetails.

CREATE TABLE OrderDetails(
   OrderId BINARY(16) PRIMARY KEY,
   ProductName VARCHAR(100) NOT NULL,
   Price DECIMAL(10, 2) NOT NULL,
   ExpectedDelivery DATE NOT NULL
);

Ahora, insertando datos en la tabla OrderDetails. Aquí, utilizaremos las funciones UUID y UUID_TO_BIN() para asignar el valor en la columna OrderId.

INSERT INTO OrderDetails(OrderId, ProductName, Price, ExpectedDelivery)
VALUES(UUID_TO_BIN(UUID()), 'Asus Rog', 90000.00, '2020-12-20'),
      (UUID_TO_BIN(UUID()), 'Acer Predator', 100000.00, '2020-12-18'),
      (UUID_TO_BIN(UUID()), 'Lenovo Legion', 85000.00, '2020-12-19'),
      (UUID_TO_BIN(UUID()), 'Hp Omen', 70000.00, '2020-12-18'),
      (UUID_TO_BIN(UUID()), 'Dell Inspiron', 65000.00, '2020-12-23'),
      (UUID_TO_BIN(UUID()), 'Acer Nitro', 60000.00, '2020-12-22'),
      (UUID_TO_BIN(UUID()), 'Asus Tuf', 80000.00, '2020-12-19');

A continuación, usaremos el siguiente comando para verificar la tabla.

SELECT  * from OrderDetails;

Producción :

SOLICITAR ID NOMBRE DEL PRODUCTO PRECIO ENTREGA ESPERADA
0xE50EF0D93E3E11EBB8970862660CCBD4  asus rog 90000.00 2020-12-20
0xE514F3293E3E11EBB8970862660CCBD4 acer depredador 100000.00 2020-12-18
0xE514F6793E3E11EBB8970862660CCBD4 Lenovo legión 85000.00 2020-12-19
0xE514F7C83E3E11EBB8970862660CCBD4  presagio hp 70000.00 2020-12-18
0xE514F9173E3E11EBB8970862660CCBD4 Dell Inspiron 65000.00 2020-12-23
0xE514FA7B3E3E11EBB8970862660CCBD4 acer nitro 60000.00 2020-12-22
0xE514FC6C3E3E11EBB8970862660CCBD4  Asus Tuf 80000.00 2020-12-19

Publicación traducida automáticamente

Artículo escrito por jana_sayantan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *