使用函数在MySql中创建随机字符串的最佳方法
我想在mysql中创建长度为5个字符的随机密码。 然后我发现最好的方法是在MySql中创建一个我可以随时随地调用的函数 功能结构:使用函数在MySql中创建随机字符串的最佳方法,mysql,function,random,passwords,Mysql,Function,Random,Passwords,我想在mysql中创建长度为5个字符的随机密码。 然后我发现最好的方法是在MySql中创建一个我可以随时随地调用的函数 功能结构: DELIMITER $$ CREATE /*[DEFINER = { user | CURRENT_USER }]*/ FUNCTION `database`.`RandString` () RETURNS CHAR(5) CHARACTER SET utf8 /*ADD HERE */ READS SQL DATA
DELIMITER $$
CREATE
/*[DEFINER = { user | CURRENT_USER }]*/
FUNCTION `database`.`RandString` ()
RETURNS CHAR(5) CHARACTER SET utf8
/*ADD HERE */
READS SQL DATA
DETERMINISTIC
BEGIN
SET @returnStr = '';
SET @allowedChars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
SET @i = 0;
WHILE (@i < 5) DO
SET @returnStr = CONCAT(@returnStr, SUBSTRING(@allowedChars, FLOOR(RAND() * LENGTH(@allowedChars) + 1), 1));
SET @i = @i + 1;
END WHILE;
RETURN @returnStr;
END$$
DELIMITER ;
当您知道更好的方法时,请在下面进行评论。您的功能错误!!!因为它:1)不读取SQL数据2)是不确定的。
RandString()