本文目录导读:

数据库自带工具(如 MySQL、PostgreSQL)
- MySQL:使用
INSERT INTO语句手动插入,或使用Faker库(见下文)生成脚本。 - PostgreSQL:利用
generate_series()函数批量生成数据。INSERT INTO users (name, email) SELECT md5(random()::text), 'user' || generate_series(1, 100) || '@example.com';
编程语言库(推荐用于复杂数据)
-
Python - Faker:最流行的伪造数据生成库,支持姓名、地址、邮箱、公司名等。
from faker import Faker fake = Faker() for _ in range(100): print(fake.name(), fake.email(), fake.address())可输出到 CSV/JSON,或直接用
pandas生成 DataFrame 后写入数据库。 -
JavaScript - faker.js / Chance.js:Node.js 环境常用。
const { faker } = require('@faker-js/faker'); console.log(faker.name.findName(), faker.internet.email()); -
Java - JavaFaker:类似 Faker 的 Java 实现。
专用工具
- Mockaroo:在线工具,支持 CSV/JSON/SQL 导出,可自定义字段规则(如正则、枚举)。
- JSON Generator:用于生成复杂的嵌套 JSON 数据。
- Redgate SQL Data Generator:Windows 上的 SQL Server 数据填充工具。
- SQL Data Generator (for PostgreSQL):PostgreSQL 的批量数据生成插件。
命令行工具
csvkit(Python):结合 Faker 生成 CSV 文件。pip install csvkit csvpy -f csv -d ',' -o output.csv -r 1000 "SELECT fake.name() AS name, fake.email() AS email"
faker-cli:安装faker-cli(Python) 后直接生成数据:faker -r 1000 -o users.csv name email phone_number
数据库测试框架
- Django/Flask + Faker:在 Web 框架中编写数据工厂。
# Django + Faker from faker import Faker from myapp.models import User fake = Faker() for _ in range(100): User.objects.create(name=fake.name(), email=fake.email()) - Rails - FactoryBot:Ruby on Rails 的测试数据生成库。
AI 辅助生成(适合复杂业务规则)
- ChatGPT/Claude:描述你的字段需求,让 AI 生成 Python/Faker 代码或直接输出 JSON/CSV。
- Mockaroo 的 AI 插件:部分版本支持自然语言描述生成数据规则。
选择建议:
- 简单/快速填充:在线工具(Mockaroo)或 Faker 库。
- 复杂业务逻辑:用 Python/Faker 编写脚本,并引入随机规则。
- 大规模数据:数据库自带函数(如
generate_series)或专业工具。 - 重复使用:将 Faker 脚本保存为
.py文件,随时运行。
如果需要具体工具的教程或代码示例,可以告诉我你的技术栈(如 Python/Django、Java、SQL 等),我可以提供更针对性的帮助。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。