JSON 转 SQL 在线工具
工具用的顺手吗?
你的反馈能帮助我们做得更好
将 JSON 数据快速转换为 SQL INSERT 语句,支持数组和对象格式。
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
把一个 JSON 对象或对象数组转换为 SQL 文本,适合把结构化样例整理成可审阅的建表与插入语句。对象的属性名会成为列名;数组中的对象按行处理。默认表名为 my_table,默认会生成 CREATE TABLE,并可生成多行 INSERT。生成的文本需要在目标数据库和目标表结构中复核。
JSON 标准区分对象、数组、字符串、数字、布尔值和 null。转换时,数组中各对象出现过的字段会合并为列集合,并按首次出现顺序排列;某行缺少字段或字段为 null 时,插入值写作 SQL NULL。空数组没有可转换的数据行,因此不会产生插入内容。
可选择 MySQL、PostgreSQL 或 SQLite 方言。MySQL 的字段名采用反引号括起;PostgreSQL 与 SQLite 使用双引号括起,并按对应规则处理引号。字符串值使用 SQL 字符串字面值并转义单引号。布尔值在 MySQL 和 PostgreSQL 输出为 TRUE/FALSE,在 SQLite 输出为 1/0。
工具按样例值推断简化列类型:整数、浮点数和布尔值各有对应类型;普通字符串以及序列化后的对象或数组通常为 VARCHAR(255),较长文本为 TEXT。这只是基于当前输入的粗略推断,不会替你设计主键、索引、精度、约束或完整业务 schema。JSON 中的日期文本仍按字符串处理,不会自动变成日期类型。
指南
按步骤完成操作,并通过示例核对输入与结果。
输入一个对象表示一行,或输入由多个对象组成的数组表示多行。对象数组中的每个元素都应为对象;顶层原始值或包含数字、字符串等非对象元素的数组不符合该工具的行数据要求。
按目标数据库选择 MySQL、PostgreSQL 或 SQLite,并检查表名。可以决定是否生成建表语句以及是否合并为多行插入;未修改时表名为 my_table,两项生成选项默认开启。
阅读列的排列、推断类型和每行取值,特别检查字段名、长文本、空值以及日期字符串。需要时复制 SQL,再在目标数据库版本中审阅和调整。
场景
查看这项工具在不同工作与生活流程中的用法。
开发者已有一组 JSON 测试记录,需要快速获得初版建表与插入语句。转换后先按项目 schema 调整字段类型、约束和索引,再用于本地测试数据准备。
团队收到 JSON 格式的多条示例记录,希望用 SQL 预览字段和行值。可比较数组对象间的字段差异,确认缺省列会写入空值后,再决定是否导入。
学习者可用同一组小型 JSON 样例切换三种方言,观察标识符引号、布尔值写法与推断类型的变化;输出用来辅助理解,仍需对照数据库文档。
问答
集中解答高频疑问与容易混淆的问题。
不会。嵌套值会序列化为 JSON 文本后写入对应列,不会自动拆成关联表或子列。
不会。日期样式的文本按普通字符串参与类型推断;如果需要日期或时间类型,应根据数据库要求手动调整列定义。
不能。当前转换提供建表和插入相关输出,不生成更新、删除、索引或主键语句。
该字段仍会出现在合并后的列集合中;缺少它的那一行会以 SQL NULL 插入。请确认目标字段允许空值,或手动提供合适默认值。
须知
使用前了解适用范围、结果限制与必要提醒。
生成的类型是按样例值作出的简化推断,不能代替正式数据库 schema 设计。逐项检查标识符、字段长度、数值范围、空值约束和目标数据库兼容性。转义后的字面值不等同于应用程序的参数化查询;若在应用代码中处理用户输入,应优先采用数据库驱动支持的参数绑定。不要把密码、个人信息或其他不宜上传的真实数据粘贴进在线转换内容。
推荐
查找相关工具、专题与可用的 API 能力。