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就设置好了!