MySQL 生成随机密码

来源:互联网 发布:php求数组中的最大值 编辑:程序博客网 时间:2024/05/02 02:06
我简化了步骤, 比之前的更加简洁,常规生成随机密码。


DELIMITER $$USE `t_girl`$$DROP FUNCTION IF EXISTS `func_range_string_mod`$$CREATE DEFINER=`root`@`localhost` FUNCTION `func_range_string_mod`(    f_num INT UNSIGNED -- Total strings.    ) RETURNS VARCHAR(200) CHARSET latin1BEGIN          DECLARE i INT UNSIGNED DEFAULT 0;       DECLARE v_result VARCHAR(200) DEFAULT '';       DECLARE v_dict VARCHAR(200) DEFAULT '';      SET v_dict = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';      SET v_dict = LPAD(v_dict,200,v_dict);      WHILE i < f_num       DO SET v_result = CONCAT(v_result,SUBSTR(v_dict,CEIL(RAND()*200),1));        SET i = i + 1;       END WHILE;        RETURN v_result;     END$$DELIMITER ;






调用方法:






select func_range_string_mod(20); 代表需要生成20个字符长度的密码。