一、创建函数
DELIMITER $$
CREATE FUNCTION getRandString(n INT)
RETURNS VARCHAR(255)
BEGIN
DECLARE chars_str VARCHAR(100) DEFAULT 'abcdefghijklmnopqrstuvwxyzABCDEFJHIJKLMNOPQRSTUVWXYZ';
DECLARE return_str VARCHAR(255) DEFAULT '';
DECLARE i INT DEFAULT 0;
WHILE i < n DO
SET return_str = CONCAT(return_str, SUBSTRING(chars_str, FLOOR(1+RAND()*52), 1));
SET i = i + 1;
END WHILE;
RETURN return_str;
END $$
DELIMITER;
1、报错
报错.png
- 由于开启了慢查询日志,因为我们开启了 bin-log,我们必须为函数指定一个参数
SHOW VARIABLES LIKE 'log_bin_trust_function_creators'
SET GLOBAL log_bin_trust_function_creators=1
- 这样添加了参数以后,如果mysqld重启,上述参数又会消失
网友评论