您现在的位置: 万盛学电脑网 >> 程序编程 >> 数据库 >> mysql教程 >> 正文

MySQL 生成随机密码

作者:佚名    责任编辑:admin    更新时间:2022-06-22

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 latin1 
BEGIN 
     
      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个字符长度的密码。