SQL ⇄ JSON 转换
建表语句 · INSERT 解析 · 数据互转
SQL 转换
就绪
ABOUT
关于 SQL ⇄ JSON 转换
从 JSON 数组生成 SQL 建表与插入语句,或从 INSERT 语句还原 JSON 数据。
原型阶段的表结构往往随 JSON 样本迭代而变。从 JSON 自动生成 DDL 与 INSERT 可让数据库 schema 与 API 契约同步演进,减少手写 SQL 的重复劳动。
DEEP DIVE
深入了解 SQL ⇄ JSON 转换
数据库开发与 JSON API 开发常需在两套数据表示间切换:从 JSON 样本生成建表语句和 INSERT,或从遗留 SQL dump 还原 JSON 数据。JSONSort SQL 工具在浏览器本地完成双向转换,适合快速原型和测试数据构造。
建表语句根据 JSON 值的类型推断列类型(字符串、数字、布尔等),INSERT 语句批量生成多行数据,省去手写 SQL 的重复劳动。
类型推断基于样本值而非 schema 元数据:若某列首条记录为 null,可能被推断为 nullable varchar。建议样本覆盖各字段的典型非空值,生成后在数据库客户端中 review 并调整类型。
FEATURES
核心能力
JSON → CREATE TABLE
根据 JSON 对象结构自动生成建表 DDL。
JSON → INSERT
JSON 数组每元素生成一条 INSERT 语句。
INSERT → JSON
从 INSERT 语句还原 JSON 数组数据。
类型推断
根据 JSON 值自动选择 VARCHAR、INT、BOOLEAN 等类型。
即时输出
修改 JSON 后 SQL 立即更新。
本地生成
含业务数据的 JSON 不离开浏览器。
批量 INSERT
JSON 数组每条记录生成独立 INSERT,适合 seed 数据。
表名自定义
选项中指定表名,避免默认 table_name 占位符。
HOW TO USE
使用步骤
-
1
粘贴 JSON 或 SQL
-
2
选择生成建表/插入或解析 INSERT
-
3
复制 SQL 或 JSON 结果
-
4
转换失败时查看错误提示,修正源文件语法后重试
-
5
结果可用格式化工具美化,或导出供下游脚本使用
WORKFLOW
典型工作流
从导入数据到导出结果的完整流程,帮助团队统一 SQL ⇄ JSON 转换 的使用方式。
准备 JSON
单对象用于建表;对象数组用于 INSERT。
选择模式
CREATE TABLE / INSERT / 反向解析 INSERT。
Review SQL
检查列类型与表名,必要时编辑 JSON 重新生成。
执行导入
复制到 DBeaver / DataGrip 等在测试库执行。
USE CASES
适用场景
后端开发
API 响应样本快速生成测试数据库表和数据。
测试工程师
构造 SQL 测试 fixture,或从 dump 还原 JSON 断言。
数据迁移
JSON 导出数据转为 SQL 导入传统 RDBMS。
全栈工程师
原型阶段 JSON Mock 转 SQL seed 脚本。
DBA
从 API JSON 样本快速建 staging 表做数据验证。
教学培训
演示 JSON 关系映射,生成可执行的 SQL 示例。
TIPS
使用技巧
- JSON 数组样本用于 INSERT;单个 JSON 对象用于 CREATE TABLE。
- 类型推断基于首条记录,若字段类型混合建议统一后重新生成。
- 生成的 SQL 建议在测试库验证后再用于生产。
- INSERT → JSON 适合从同事提供的 SQL dump 提取测试数据。
- 复杂嵌套 JSON 建议先扁平化,SQL 表结构不支持无限嵌套。
- 生成后可复制到数据库客户端执行,或通过 CSV 工具做中间转换。
- 嵌套对象建议 flatten 或存 JSON 列后再生成 DDL。
- INSERT 语句先在测试库执行,确认字符集 utf8mb4 支持 emoji。
- 从 dump 还原 JSON 时注意 SQL 转义引号是否正确。
- 与 CSV 工具组合:Excel → JSON → SQL 流水线。
LOCAL VS ONLINE
本地 vs 在线工具
JSONSort 坚持纯前端架构,以下对比说明为何本地化工具更适合处理开发数据。
TROUBLESHOOTING
常见误区与排查
实际使用中容易遇到的问题及建议处理方式,减少反复试错的时间。
类型全是 VARCHAR
建议:样本值类型单一;补充含数字、布尔的代表记录。
INSERT 引号错误
建议:字符串中撇号未转义;检查 JSON 特殊字符。
嵌套无法建列
建议:先 JSON.stringify 嵌套字段或 flatten 结构。
方言不兼容
建议:PostgreSQL JSONB、MySQL JSON 类型需手动改 DDL。
FAQ
常见问题
支持 MySQL 还是 PostgreSQL?
生成通用 SQL 语法,兼容多数关系型数据库,特殊方言需微调。
嵌套 JSON 怎么处理?
嵌套对象通常序列化为 JSON 字符串列或扁平化,取决于模式。
表名可以自定义吗?
可在选项中指定表名,默认使用 table_name 等占位名。
支持 SQLite 语法吗?
生成通用 SQL,SQLite 需微调 AUTOINCREMENT 等方言细节。
大数组 INSERT 会合并吗?
默认每条一行 INSERT;便于逐条调试,体积较大时可自行合并。
数据会上传到服务器吗?
不会。JSONSort 所有工具均在浏览器本地运行,您的输入内容不会发送到任何后端服务器。
需要注册或安装吗?
不需要。打开页面即可使用,无需账号、无需下载客户端,也支持 PWA 离线缓存。
支持多大的文件?
取决于浏览器内存,通常可流畅处理数 MB 级别的数据。超大文件建议先拆分或使用合并清理工具。