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

标签 mysql database mariadb

我正在尝试创建一些测试数据,这意味着用于使用 MariaDB 表和数据库的假数据。

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

如何创建随机假数据。大量的。例如,假设我想要 200 万行包含 ID、NAME、ADDRESS、PHONE、EMAIL 的随机数据。

最佳答案

是的,

使用 MariaDB 可以非常轻松地做到这一点:

这是一个序列引擎,这就是您所需要的。

这里是一个示例

此示例将数据(使用 SELECT 创建)存储在表“yourtable”中。

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]>

关于mysql - 使用 RDBMS 数据库测试数据创建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37224318/

相关文章:

java - mysqldump 在 java 中不起作用

mysql - 有多个选择时如何使用 SQL_CALC_FOUND_ROWS

python - 使用 MariaDB 10.2 安装 mysqlclient 时出错

mysql - 计算接收802.11数据包的时间

php - 如何在 Laravel 中向现有表添加列?

php - 从具有多行的关系表中获取数据

php - 将存储在数据库中的值作为div的高度

mariadb - 如何将 json 字段拆分为多行?

mysql - 尝试在 mysql 中创建 PROCEDURE 时出现错误

php - Zend Framework 2 在模型中实例化表