JSON转SQL
将 JSON 数组数据一键转换为标准的 SQL INSERT 语句,支持自定义表名,自动转义特殊字符。
JSON 转 SQL
JSON 转 SQL 工具使用指南
📌 简介
JSON 转 SQL 工具是一款极具效率的数据迁移辅助工具。在开发过程中,我们经常需要将测试数据、爬虫抓取的数据或外部接口返回的 JSON 数据导入到关系型数据库(如 MySQL、PostgreSQL)中。手动将对象数组转换为 INSERT 语句不仅枯燥,还极易因为引号转义出错。本工具可一键将 JSON 数组转换为标准的 SQL INSERT 语句,自动处理字段名和值转义。
📖 JSON 与 SQL 数据模型对比
JSON 是一种树形结构,支持嵌套对象和数组;而 SQL 是关系型结构,数据以扁平的二维表存储。将 JSON 转为 SQL 时,通常要求 JSON 是一个“扁平对象数组”。例如 `[{"id":1, "name":"A"}, {"id":2, "name":"B"}]`,转换时,工具会提取所有的键名(id, name)作为列名,将每个对象转换为一行数据。对于嵌套的对象(如 `address: {city: "BJ"}`),本工具会将其序列化为 JSON 字符串存入对应的 SQL 字段中,防止数据丢失。
💼 常见应用场景
- 开发测试: 将 Mock 数据快速插入本地测试数据库。
- 数据导入: 将 NoSQL 数据库(MongoDB)导出的 JSON 导入 MySQL。
- 爬虫结果入库: 将抓取到的结构化数据直接转为 SQL 执行。
- 接口数据模拟: 基于现有的 JSON 生成 SQL,用于后台管理系统的快速验证。
⚙️ 使用步骤
- 输入目标表名(默认 `my_table`)。
- 勾选“合并为单条 INSERT”(性能更好,推荐),或取消勾选生成多条语句。
- 在左侧粘贴 JSON 数组。
- 点击“生成 SQL”,右侧会输出带有反引号保护的 SQL 语句。
⚠️ 注意事项
- 生成的 SQL 默认使用 MySQL 的语法(表名和字段名用反引号 `` ` `` 包裹)。如果您使用的是 Oracle 或 PostgreSQL,可能需要手动替换双引号。
- 单引号 `'` 和反斜杠 `\` 会被自动转义为 `\'` 和 `\\`,防止 SQL 注入或语法错误。
- JSON 中缺失的字段在生成的 SQL 中会以 `NULL` 填充。
❓ 常见问题 (FAQ)
Q: 如果我的 JSON 中有嵌套数组怎么办?
A: 嵌套的数组或对象无法直接存入单个关系型字段中(除非使用 JSON 字段类型)。本工具会自动将其 `JSON.stringify()` 转为字符串存入,读取时需自行反序列化。
Q: 支持批量生成不同表的数据吗?
A: 当前版本一次针对一个目标表生成。若数据对应多表,建议分别处理不同的 JSON 数组。