mysql如何自动生成大量数据


本文摘自PHP中文网,作者藏色散人,侵删。

mysql自动生成大量数据

为了学习验证高性能mysql,自动生成大量的数据做测试。内容来源于网络。

推荐:《mysql视频教程》

创建随机数字生成

1

2

3

4

5

6

7

8

DELIMITER $$

CREATE DEFINER=`root`@`%` FUNCTION `random_num`( ) RETURNS int(5)

BEGIN  

 DECLARE i INT DEFAULT 0; 

 SET i = FLOOR(100+RAND()*10); 

RETURN i; 

 END$$

DELIMITER ;

生成随机字符串

1

2

3

4

5

6

7

8

9

10

11

12

13

DELIMITER $$

CREATE DEFINER=`root`@`%` FUNCTION `random_string`(n INT) RETURNS varchar(255) CHARSET latin1

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 ;

生成随机数字,返回varchar类型数据组合,例如手机号

1

2

3

4

5

6

7

8

9

10

11

12

13

DELIMITER $$

CREATE DEFINER=`root`@`%` FUNCTION `random_string_phone`(n INT) RETURNS varchar(255) CHARSET latin1

BEGIN

 DECLARE chars_str VARCHAR(100) DEFAULT '1234567890';

 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()*10),1));

 SET i = i + 1;

 END WHILE;

 RETURN return_str;

END$$

DELIMITER ;

阅读剩余部分

相关阅读 >>

mysql多表查询示例

mysql如何将一行变成多行

mysql如何删除一列

布尔教育燕十八mysql优化视频课件源码分享

mysql中什么是大表?什么是大事务?该如何处理?

mysql实现查询数据库表记录数

拥有mysql中21个写sql的好习惯

mysql数据库出现authentication plugin怎么办

mysql 连接查询超级详解

mac系统下mysql下载mysql5.7及安装图解

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...