使用如下代码创建了一个trigger触发器
DELIMITER $$
CREATE TRIGGER `stufiles`.`uuid_trigger` BEFORE INSERT ON `stufiles`.`stu_totalscore` FOR EACH ROW
BEGIN
IF
new.id IS NULL THEN
SET new.id = uuid();
END IF;
END $$DELIMITER;
触发器成功添加了但是添加记录时并未生效是什么原因呢?
id 没有值,你id设置的是非空,但是添加的时候没传值
问题已解决,当用触发器把UUID作为主键的时候,字段必须默认为EMPTYSTRING,不能设为默认的null,否则因为主键不为空不能插入字段
你的id字段的数据类型是varchar的吗?
我这边MySQL8测试是没有问题的。
我这边是没有问题的。
按照你的语句创建触发器也是可以的。
您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~
ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓
【电脑端】戳>>> https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】 戳>>> https://mall.csdn.net/item/52471?utm_source=1146287632