mysql生成随机密码(大写字母)

发布时间:2020-10-10编辑:脚本学堂
本文介绍了mysql数据库中生成随机密码的方法,生成包含数字与大小写字母组成的随机密码,有需要的朋友参考下。

例子,mysql生成随机密码,大写字母加了进去,并做了一些修改。
代码:
 

复制代码 代码示例:

delimiter $$
use `t_girl`$$

drop function if exists `func_rand_string`$$

create definer=`root`@`localhost` function `func_rand_string`(f_num tinyint unsigned,f_type tinyint unsigned) returns varchar(32) charset utf8
begin
      -- translate the number to letter.
      -- no 1 stands for string only.
      -- no 2 stands for number only.
      -- no 3 stands for combination of the above.
      declare i int unsigned default 0;
      declare v_result varchar(255) default '';
      while i < f_num do
        if f_type = 1 then
          set v_result = concat(v_result,char(65+32*(ceil(rand()*2)-1)+ceil(rand()*25)));
        elseif f_type=2 then
          set v_result = concat(v_result,ceil(rand()*9));
        elseif f_type=3 then
          if (ceil(rand()*2)-1) = 1 then
            set v_result = concat(v_result,substring(replace(uuid(),'-',''),i+1,1));
          else
            set v_result = concat(v_result,upper(substring(replace(uuid(),'-',''),i+1,1)));
          end if;
        end if;
        set i = i + 1;
      end while;
      return v_result;
    end$$

delimiter ;