版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_36710456/article/details/84569332
...
DROP FUNCTION IF EXISTS random_str;
DELIMITER $$
CREATE FUNCTION random_str(n INT) RETURNS VARCHAR(255)
BEGIN
DECLARE chars_str VARCHAR(100)
DEFAULT "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
DECLARE return_str VARCHAR(255) DEFAULT "";
DECLARE i INT DEFAULT 0;
WHILE i < n DO
SET return_str=CONCAT(return_str,SUBSTRING(chars_str,FLOOR(1+RAND()*52),1));
SET i= i+1;
END WHILE;
RETURN return_str;
END $$
DELIMITER ;
...
例如,生成32位字符串
SELECT random_str(32);