需求:向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);
结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210704183413528.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0ODI4Mjgz,size_16,color_FFFFFF,t_70#pic_center)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)