2
我想创建一个mysql(v5.5)触发器,每次插入一个值时都会通过随机数执行自动递增。下面是我在做什么:MySQL触发自动增量
DELIMITER $$
DROP TRIGGER IF EXISTS actCodeAuto
$$
CREATE TRIGGER actCodeAuto BEFORE INSERT ON activity
FOR EACH ROW BEGIN
DECLARE newNumber INT DEFAULT 1;
SELECT Max(activityCode) INTO newNumber FROM activity;
IF(newNumber=NULL) THEN
SET new.activityCode=100;
ELSE
SET new.activityCode = newNumber+FLOOR(1+RAND()*3);
END IF;
END$$
DELIMITER ;
我想自动增量随机数每次我插入行,除非我插入一行首次列activityCode
的最大价值,我想设置最大(activityCode)到100
虽然我插入的第一次连胜,MySQL的只是报告错误:(1048,“列activityCode“不能为空”)
任何想法?谢谢!
我试过。还是一样。非常困惑... – ray6080
我已经想通了!谢谢! – ray6080