JSON 数组转 INSERT SQL:对象列表一键生成插入脚本

2026-07-22

为什么需要 JSON 转 SQL

接口返回或 Mock 文件常是「对象数组」,测试库却要 INSERT。手工拼引号慢且易错。ComTools JSON 转 SQLTools/Json/ToSql)在浏览器本地把数组转成多条 INSERT 语句。

若数据在 Excel / CSV 里,更推荐功能更全的 Excel 转 SQL(多方言、批量 INSERT、UPDATE/DELETE)。

输入要求

要求 说明
根类型 对象数组最理想;单个对象会按一行处理
列名 第一行对象的键作为列清单
空数组 输出 -- No rows
表名 默认 MyTable(生成后请改成真实表名)

值如何写入 SQL

JSON 值 SQL
null / 缺省 NULL
数字 不加引号
字符串 / 布尔等其它 单引号包裹,'''

使用步骤

  1. 打开 JSON 转 SQL
  2. 粘贴 JSON 数组(先 校验 / 格式化 更稳)。
  3. 点击 运行,复制生成的 INSERT
  4. MyTable 替换为实际表名,在测试库执行。

示例

输入:

[
  { "Id": 1, "Name": "Alice", "City": "Beijing" },
  { "Id": 2, "Name": "O'Brien", "City": null }
]

输出示意:

INSERT INTO MyTable (Id, Name, City) VALUES (1, 'Alice', 'Beijing');
INSERT INTO MyTable (Id, Name, City) VALUES (2, 'O''Brien', NULL);

常见场景

场景 做法
API 样例灌测试库 复制响应数组 → 转 SQL
前端 Mock 同步到 DB 同上
Excel 大表导入 Excel 转 SQL
只要 IN 列表 文本转 SQL
行数据少量粘贴 生成 INSERT

与 Excel 转 SQL 对比

能力 JSON 转 SQL Excel 转 SQL
输入 JSON 文本 xlsx / csv 上传
语句类型 主要为 INSERT INSERT / UPDATE / DELETE / SELECT
数据库方言 通用 INSERT 文本 SQL Server / MySQL / PostgreSQL 等
批量合并 INSERT 否(每行一条) 支持批量
处理位置 浏览器本地 服务端解析文件

注意事项

  • 后续对象多出的键不会自动进列清单;请保证数组元素字段一致,或以最全的对象为第一项。
  • 布尔会落成带引号的文本(如 'true'),若库列为 bit,请改脚本或先规范化数据。
  • 嵌套对象/数组不宜直接 INSERT;先压平或只保留标量字段。
  • 生产库执行前备份,并在测试库核对行数。

相关文章

常见问题

Q:能否改表名?
A:生成后全局替换 MyTable;或改源码默认值前在输出里替换即可。

Q:支持 UPDATE/DELETE 吗?
A:本工具侧重 INSERT;改删请用 Excel 转 SQL

Q:中文表头作列名?
A:可以,但建议与数据库字段一致,或生成后批量替换列名。


English version