MYSQL如何设置列的UUID?

MYSQL如何设置列的UUID?

1.什么是UUID?
UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。

2.如何给mysql数据库的表设置UUID呢?
首先,创建一个表


CREATE TABLE `product` (
  `id` varchar(32) DEFAULT NULL COMMENT '主键uuid',
  `productNum` varchar(50) NOT NULL COMMENT '产品编号',
  `productName` varchar(50) DEFAULT NULL COMMENT '产品名称(路线名称)',
  `cityName` varchar(50) DEFAULT NULL COMMENT '出发城市',
  `DepartureTime` timestamp NULL DEFAULT NULL COMMENT '出发时间',
  `productPrice` double DEFAULT NULL COMMENT '产品价格',
  `productDesc` varchar(500) DEFAULT NULL COMMENT '产品描述',
  `productStatus` int(11) DEFAULT NULL COMMENT '状态(0关闭1开启)',
  PRIMARY KEY (`productNum`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

之后把id列设为UUID

DELIMITER $$
CREATE
    /*[DEFINER = { user | CURRENT_USER }]*/
    TRIGGER `ssm`.`product_trigger` -- 触发器名称
    BEFORE INSERT             -- 触发器被触发的时机
    ON `ssm`.`product`       -- 触发器所作用的表名称
    FOR EACH ROW BEGIN
		SET new.id=REPLACE(UUID(),'-',''); -- 触发器执行的逻辑
    END$$

DELIMITER ;

之后在设好的触发器,插入语句

INSERT INTO 
product(productNum,productName,cityName,DepartureTime,prodtcuPrice,productDesc,productStatus) 
VALUES('001','钦州三日游','钦州',2020-11-16 22:39:54,1000,'非常不错的旅行',1);

随后自动会给你分配一个UUID
在这里插入图片描述

就这样,UUID就设置好了!

猜你喜欢

转载自blog.csdn.net/weixin_49092628/article/details/109732092