MYSQLはどのように列のUUIDを設定しますか?
1. UUIDとは何ですか?
UUIDは、Universally Unique Identifierの略語であり、ソフトウェア構築の標準であり、分散コンピューティング環境の分野におけるOpen SoftwareFoundationの一部です。その目的は、中央制御端末が識別情報を指定する必要なしに、分散システム内のすべての要素が一意の識別情報を持つことを可能にすることです。
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が設定されます!