需求:向mysql中批量插入指定位数的随机数
sql脚本:
第一步:创建一个函数用于生成指定位数的随机数
DELIMITER $$
CREATE FUNCTION random_ss(num INT) RETURNS VARCHAR(64)
BEGIN
DECLARE str VARCHAR(64) DEFAULT 'abcdefghigklmnopqrstuvwxyz';
DECLARE i INT DEFAULT 1;
DECLARE j VARCHAR(64) DEFAULT '';
aa:WHILE i <= num DO
SET j = CONCAT(j,SUBSTR(str,FLOOR(RAND()*26+1),1));
SET i = i+1;
END WHILE aa;
RETURN j;
END $$
第二步:创建一个存储过程完成批量插入
CREATE PROCEDURE random_test(
IN n INT,
IN m INT)
BEGIN
DECLARE k INT DEFAULT 1;
bb:WHILE k <= n DO
INSERT INTO random (NAME) VALUES(random_ss(m));
SET k = k+1;
END WHILE bb;
END $$
测试:
CALL random_test(5,5);
结果:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)