Конвертер SQL в JSON (INSERT … VALUES)
Преобразуйте операторы SQL INSERT в JSON: многострочные VALUES, идентификаторы в кавычках, экранированные кавычки, NULL, TRUE/FALSE и числа, несколько таблиц. Бесплатно.
Работает полностью в вашем браузере. Ваши данные никуда не загружаются.
Похожие Инструменты
Просмотреть ВсеЧто такое SQL в JSON?
Вставьте SQL с операторами INSERT — дамп базы данных, файл начальных данных или миграцию — и получите строки в виде JSON. Каждая строка становится объектом с ключами по именам столбцов; вставки в несколько таблиц дают объект с одним массивом на таблицу.
Как пользоваться SQL в JSON
- Вставьте SQL в поле Входные данные SQL либо воспользуйтесь Загрузить пример или Открыть файл.
- Оставьте включённым Экранирование обратной косой чертой в строках (MySQL) для дампов MySQL или отключите его для стандартного SQL / PostgreSQL.
- Выберите Отступ для JSON.
- JSON-результат обновляется по мере ввода; используйте Копировать или Скачать.
Пример
INSERT INTO users (id, name) VALUES (1, 'O''Brien'), (2, NULL);
[
{
"id": 1,
"name": "O'Brien"
},
{
"id": 2,
"name": null
}
] Когда использовать SQL в JSON
Используйте, чтобы извлечь данные из дампов SQL или файлов начальных данных, не запуская базу. SQL не выполняется: операторы SELECT, UPDATE и DDL игнорируются, а функции не вычисляются.
Как работает SQL в JSON
Токенизатор читает строки (удвоенные кавычки '', необязательное экранирование обратной косой чертой MySQL, префиксы N'…' и E'…'), идентификаторы в кавычках ("…", обратные кавычки, […]), числа и комментарии (--, #, /* */). Затем парсер ищет INSERT [IGNORE] INTO table [(columns)] VALUES (…), (…) и пропускает все остальные операторы. NULL, TRUE и FALSE превращаются в null и логические значения JSON; целые числа, слишком большие для JavaScript, сохраняются точно. Выражения вроде NOW() остаются исходным текстом. Строки без списка столбцов получают ключи column1, column2, …
Распространенные Случаи Использования
- Превращение фрагмента mysqldump в тестовые данные JSON
- Просмотр начальных данных из файла миграции
- Перенос нескольких строк из SQL в хранилище NoSQL
- Проверка, какие значения на самом деле содержит оператор INSERT
Часто Задаваемые Вопросы
Какие диалекты SQL поддерживаются?
Синтаксис INSERT в MySQL/MariaDB, PostgreSQL, SQLite и SQL Server: распознаются все их способы заключения идентификаторов в кавычки. Для дампов не из MySQL с путями Windows отключите экранирование обратной косой чертой.
А INSERT … SELECT?
Буквальные данные содержат только списки VALUES; операторы INSERT … SELECT пропускаются.
Почему NOW() получилось строкой?
Инструмент не выполняет SQL, поэтому выражения остаются исходным текстом.