我希望每次向数据库插入新条目时,让数据库列自动生成大约300 ++随机字母数字字符串。以下代码的大小仅为36。
DELIMITER ;;
CREATE TRIGGER testdata
BEFORE INSERT ON testdata
FOR EACH ROW
BEGIN
IF new.token IS NULL THEN
SET new.token = uuid();
END IF;
END
;;
感谢所有回答这个问题的人。
答案 0 :(得分:1)
一种选择是将多个调用的输出链接到uuid()
,即
DELIMITER ;;
CREATE TRIGGER testdata
BEFORE INSERT ON testdata
FOR EACH ROW
BEGIN
IF new.token IS NULL THEN
SET new.token = CONCAT(REPLACE(uuid(), '-', ''), REPLACE(uuid(), '-', ''), ...)
END IF;
END
;;
请注意,我从UUID中删除了连字符,因为它们是多余的,并且在使字符串更随机的方面做得不多。