巨大的 MySQL 随机字母数字字符串

Huge MySQL Random Alphanumeric String

我希望让数据库列在每次向数据库中插入新条目时自动生成大约 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
;;

感谢所有回答此问题的人。

一种选择是将多次调用 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 中删除了连字符,因为它们是多余的,并且在使字符串更加随机方面没有做太多事情。