当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MySQL 随机密码生成代码

MYSQL
提高MySQL中数据装载效率
mysql 前几条记录语句之(limit)
php 读取mysql数据库三种方法
mysql sql语句总结
mysql 日期和时间函数
MySQL 文本文件的导入导出数据的方法
MySQL不支持InnoDB的解决方法
mysql 维护常用命令
MySQL JOIN之完全用法
mysql 复制记录实现代码
远程访问MySQL数据库的方法小结
MySQL 1303错误的解决方法(navicat)
MySQL 创建主键,外键和复合主键的语句
MySQL 加密/压缩函数
Mysql 本地计算机无法启动 mysql 服务 错误 1067:进程意外终止。
通过MySQL全文搜索实现中文的相关搜索

MYSQL 中的 MySQL 随机密码生成代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 88 ::
收藏到网摘: n/a

晚上有朋友问起,简单的写了一个。
复制代码 代码如下:

DELIMITER $$
CREATE
FUNCTION `t_girl` . `func_rand_string` ( f_num tinyint unsigned , f_type tinyint unsigned )
RETURNS varchar ( 32)
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 ( 97+ ceil( rand ( ) * 25) ) ) ;
elseif f_type= 2 then
set v_result = concat ( v_result, char ( 48+ ceil( rand ( ) * 9) ) ) ;
elseif f_type= 3 then
set v_result = concat ( v_result, substring ( replace ( uuid ( ) , '-' , '' ) , i+ 1, 1) ) ;
end if;
set i = i + 1;
end while;
return v_result;
END $ $
DELIMITER ;

调用方法示例:
复制代码 代码如下:

select func_rand_string(12,3);