mysql数据库创建产生随机字符串的函数

SHOW   VARIABLES   LIKE   'log_bin_trust_function_creators'; 

SET GLOBAL log_bin_trust_function_creators = 1;//打开修改器

DROP   FUNCTION   IF   EXISTS   generate_string;
DELIMITER //
CREATE   FUNCTION   generate_string(n INT)
RETURNS   VARCHAR(255)
BEGIN
DECLARE  string_scope   VARCHAR(100)   DEFAULT

'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
        DECLARE   return_str   VARCHAR(255)   DEFAULT '';
        DECLARE   i   INT   DEFAULT  0;
        WHILE   i < n   DO
                SET   return_str = CONCAT(return_str,SUBSTRING(string_scope, FLOOR(1 + RAND()*62 ),1));
                SET   i = i +1;
        END    WHILE;
        RETURN   return_str;
END //
DELIMITER ;

使用的时候就像concat这种函数一样,直接调用generate_string(5)即可产生五位字符串。

 

 

你可能感兴趣的:(mysql,java)