JSON转MySQL建表工具

在线把 JSON 数据或字段定义转换成 MySQL CREATE TABLE 建表语句,自动推断字段类型和长度,适合快速建表。

工具介绍

JSON 转 MySQL 建表工具可以解析输入的 JSON 对象或对象数组,自动根据字段值推断合适的 MySQL 数据类型,一键生成可直接执行的 CREATE TABLE 建表语句,支持自定义表名、默认字符串长度等配置。

使用方法

  1. 在输入框粘贴需要转换的 JSON 内容,支持单个 JSON 对象或者 JSON 对象数组。
  2. 设置表名、默认字符串长度,勾选是否删除已有表、是否自动添加主键。
  3. 点击「生成 CREATE TABLE 语句」按钮,即可获得生成好的建表 SQL。

类型推断规则

JSON 值类型推断出的 MySQL 类型说明
整数int所有整数类型默认推断为 int
浮点数/小数decimal(10,2)默认保留两位小数
布尔值tinyint(1)1 表示 true,0 表示 false
长度小于等于设置长度的字符串varchar(N)N 为设置的默认字符串长度
长度大于 255 的字符串text长文本使用 text 类型存储
数组/对象/jsonjsonJSON 类型原生支持存储结构化数据
nullvarchar(N)null 无法推断类型,默认使用 varchar

注意事项

为什么只处理数组的第一个对象?

工具默认会将对象数组中的第一个对象作为字段原型提取所有字段,如果你的数组中对象结构不一致,可以手动在生成的 SQL 中添加缺少的字段。

生成的 SQL 可以直接在数据库执行吗?

默认配置下生成的 SQL 符合 MySQL 语法规范,可以直接执行,如果有自定义需求(比如允许 NULL、修改类型长度),可以手动编辑生成结果后再执行。

为什么布尔值会生成 tinyint(1) 而不是 bool?

在 MySQL 中,bool/boolean 本质是 tinyint(1) 的别名,使用 tinyint(1) 兼容性更好,更符合主流开发习惯。

JSON 类型在所有 MySQL 版本都支持吗?

JSON 类型是 MySQL 5.7 及以上版本引入的,如果你的 MySQL 版本低于 5.7,可以手动将 json 类型改为 text 存储。