使用RDBMS数据库创建测试数据?

时间:2016-05-14 08:13:34

标签: mysql database mariadb

我正在尝试创建一些测试数据,这意味着可以使用伪数据来播放MariaDB表和数据库。

我需要使用SQL RDBMS创建一些伪随机数据。那么,为什么不使用Mockaroo.com,但在那个网站上我一次只能做1000行。这非常耗时。

如何创建随机假数据。吨的数量。例如,让我们说我需要2百万行随机数据,ID,NAME,ADDRESS,PHONE,EMAIL。

1 个答案:

答案 0 :(得分:2)

YES,

使用MariaDB可以轻松完成:

是一个序列引擎,这就是你需要的东西。

这是一个示例

此示例将使用表格" yourtable"来存储数据(使用SELECT创建)。

INSERT INTO yourtable
SELECT seq,CONCAT('NAME FROM:',seq), CONCAT('ADR:',seq), CAST(RAND(SEQ)*10000000 AS INT),CONCAT(seq,'@dumymail.xx') FROM seq_1_to_1000000;

这将产生如下:

MariaDB [mysql]> SELECT seq,CONCAT('NAME FROM:',seq), CONCAT('ADR:',seq), CAST(RAND(SEQ)*10000000 AS INT),CONCAT(seq,'@dumymail.xx') FROM seq_1_to_10;
+-----+--------------------------+--------------------+---------------------------------+----------------------------+
| seq | CONCAT('NAME FROM:',seq) | CONCAT('ADR:',seq) | CAST(RAND(SEQ)*10000000 AS INT) | CONCAT(seq,'@dumymail.xx') |
+-----+--------------------------+--------------------+---------------------------------+----------------------------+
|   1 | NAME FROM:1              | ADR:1              |                         4054035 | 1@dumymail.xx              |
|   2 | NAME FROM:2              | ADR:2              |                         6555866 | 2@dumymail.xx              |
|   3 | NAME FROM:3              | ADR:3              |                         9057698 | 3@dumymail.xx              |
|   4 | NAME FROM:4              | ADR:4              |                         1559529 | 4@dumymail.xx              |
|   5 | NAME FROM:5              | ADR:5              |                         4061360 | 5@dumymail.xx              |
|   6 | NAME FROM:6              | ADR:6              |                         6563191 | 6@dumymail.xx              |
|   7 | NAME FROM:7              | ADR:7              |                         9065022 | 7@dumymail.xx              |
|   8 | NAME FROM:8              | ADR:8              |                         1566853 | 8@dumymail.xx              |
|   9 | NAME FROM:9              | ADR:9              |                         4068684 | 9@dumymail.xx              |
|  10 | NAME FROM:10             | ADR:10             |                         6570515 | 10@dumymail.xx             |
+-----+--------------------------+--------------------+---------------------------------+----------------------------+
10 rows in set (0.00 sec)

MariaDB [mysql]>