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