Como definir o tipo de chave primária para UUID na tabela mysql

Hoje, encontrei um problema em alterar o código de outra pessoa, para criar uma chave primária do tipo uuid

CREATE TABLE `product` (
  `id` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
  `productNum` VARCHAR(50) NOT NULL,
  `productName` VARCHAR(50) DEFAULT NULL,
  `cityName` VARCHAR(50) DEFAULT NULL,
  `DepartureTime` TIMESTAMP NULL DEFAULT NULL,
  `productPrice` DECIMAL(10,0) DEFAULT NULL,
  `productDesc` VARCHAR(255) DEFAULT NULL,
  `productStatus` INT(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;

Quero mudar o id do produto na tabela acima para o tipo uuid

uuid

   UUID significa Universally Unique Identifier (Universally Unique Identifier) ​​.O aplicativo de projeto uuid www.1b23.com se refere a um número gerado em uma máquina, o que garante que seja único para todas as máquinas no mesmo tempo e espaço. Normalmente, a plataforma fornecerá a API gerada. Em outras palavras, a exclusividade do id da chave primária pode ser garantida dentro de um determinado intervalo. A
   função uuid () pode ser usada diretamente no mysql para gerar um uuid aleatório. O
   uuid normal tem 36 bits de comprimento, por exemplo: d48644cc-2c7a -4714-9900-18ab99e80b03, entre os quais 4 caracteres são "-", você pode usar a função replace () para substituir "-" no mysql

substituir função

O uuid gerado por padrão contém'- ', podemos usar a função de substituição para substituir o'-', o SQL é o seguinte:

select replace(uuid(),"-","") as uuid;

O Baidu descobriu posteriormente que essa operação pode ser realizada por meio de gatilhos

Crie um gatilho no lado esquerdo
Insira a descrição da imagem aqui
chamado id_trigger.
Abaixo está o código do gatilho

DELIMITER $$

CREATE
    /*[DEFINER = { user | CURRENT_USER }]*/
    TRIGGER `ssm_project1`.`id_trigger` BEFORE INSERT
    ON `ssm_project1`.`product`
    FOR EACH ROW BEGIN
		SET new.id=REPLACE(UUID(),'-','');
    END$$

DELIMITER ;

O gatilho percebe que um uuid único é gerado quando os dados são inseridos e o
projeto é resolvido com sucesso após a execução do projeto.
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/he1234555/article/details/114012854
Recomendado
Clasificación