JSON ↔ SQL 转换器
在您的浏览器中本地运行将 JSON 转换为 CREATE TABLE 和 INSERT 语句,或将 SQL INSERT 数据转换为 JSON
更多选项
1–1000 行。SQL Server 的单个 VALUES 列表最多接受 1000 行。
关闭时,只有保留字和含特殊字符的名称会加引号。
JSON 输入
JSON ↔ SQL 的功能
JSON ↔ SQL 将 JSON 记录转换为适用于 PostgreSQL、MySQL、SQLite 和 SQL Server 的 CREATE TABLE 及分批 INSERT 语句,也能把 SQL INSERT 数据转换回 JSON。列是所有记录键的并集,因此只出现在一个对象中的键也会有对应的列,缺失的键写为 NULL。当 JSON 中有多个数组时,数据集选择器会显示每个 JSONPath 及其行数,方便你选择要转换的数组。
使用方法
- 1.选择 JSON → SQL 或 SQL → JSON,并选择 SQL 方言。
- 2.粘贴数据,上传或拖放 .json 或 .sql 文件,或加载示例。
- 3.在 JSON → SQL 中设置表名和要生成的语句;更多选项中包含每条 INSERT 的行数和标识符引号设置。
- 4.查看输出、说明及其下方的审查提示。
- 5.复制结果,下载 data.sql 或 data.json,或在相反方向中打开以检查往返转换。
类型映射与转义
类型根据值保守地推断。整数变为 INTEGER,数值更大时变为 BIGINT 或精确的 NUMERIC/DECIMAL;小数在 PostgreSQL 中为 NUMERIC,在 MySQL 中为 DOUBLE,在 SQLite 中为 REAL,在 SQL Server 中为 FLOAT;ISO 8601 日期和时间戳变为日期和时间戳类型;只是看起来像数字的字符串仍保持为文本。嵌套对象和数组在 PostgreSQL 中使用 JSONB,在 MySQL 中使用 JSON,在 SQLite 和 SQL Server 中以序列化的 JSON 文本存储。所有方言都会把单引号写两次,MySQL 还会转义反斜杠,SQL Server 字符串使用 N'…' Unicode 字面量,布尔值按各方言的要求写为 TRUE/FALSE 或 1/0。大整数和位数很长的小数会保留精确位数。
SQL → JSON 的范围、限制与隐私
SQL → JSON 使用 node-sql-parser 读取 INSERT … VALUES 语句:支持单行和多行插入、多条语句以及多张表,多张表会以表名为键的对象返回。同一输入中的 CREATE TABLE 会提供列名,将 JSON 列转换为嵌套 JSON,并将 BOOLEAN 或 BIT 列转换为 true 和 false。SELECT、UPDATE、NOW() 等函数、表达式和 DEFAULT 会附带消息被拒绝,而不是被猜测。SQL 只会被解析,绝不会执行,你的数据也不会发送到服务器;所选方言的解析器只在第一次转换时下载一次。生成的 SQL 用于检查、迁移和开发:在生产数据上运行前请先审查,应用程序中请使用参数化查询。
