---
title: "Конвертация JSON в PostgreSQL"
description: "Конвертируйте файлы JSON в SQL для PostgreSQL в браузере: CREATE TABLE с типами столбцов, затем INSERT. Бесплатно, файл никуда не загружается."
canonical: https://intosql.com/ru/json-v-postgresql
last_updated: 2026-10-15
---

# Конвертация JSON в PostgreSQL

Перетащите файл JSON, чтобы получить скрипт для PostgreSQL с командами CREATE TABLE и INSERT. Каждый столбец получает тип, а каждое исправление указано со строкой и столбцом.

## Из JSON в PostgreSQL, столбец за столбцом

Пример выше, pedidos_2024.json, в том виде, в котором IntoSQL записывает его для PostgreSQL: что хранит каждый столбец в файле, какой тип он получает и как его первое значение попадает в скрипт.

| В файле | Первое значение | Столбец | Тип в PostgreSQL | В скрипте |
| --- | --- | --- | --- | --- |
| pedido | `000481` | `pedido` | `text` | `'000481'` |
| cliente | `Peña Muñoz` | `cliente` | `text` | `'Peña Muñoz'` |
| fecha | `2024-02-03T10:15:00Z` | `fecha` | `timestamptz` | `'2024-02-03 10:15:00+00:00'` |
| total | `1234.5` | `total` | `numeric(6,2)` | `1234.5` |
| pagado | `true` | `pagado` | `boolean` | `TRUE` |
| notas | `` | `notas` | `text` | `NULL` |

## Загрузите скрипт в PostgreSQL

Вы скачиваете обычный файл .sql. Запустите его штатными средствами PostgreSQL.

### PostgreSQL

```shell
psql -v ON_ERROR_STOP=1 -d mydb -f pedidos_2024.postgresql.sql
```

ON_ERROR_STOP останавливает psql на первой ошибке. Скрипт выполняется в одной транзакции, поэтому неудачная загрузка оставляет базу без изменений. В pgAdmin или DBeaver откройте скрипт в окне запроса и выполните его.

Без скрипта:

```shell
intosql load pedidos_2024.json --into postgres://user@localhost/mydb
```

## Что IntoSQL читает в файлах JSON

- Файл может быть массивом объектов, объектом, который хранит этот массив под ключом вроде data, или одним объектом на строку (NDJSON).
- Каждый ключ становится столбцом. Объекты и массивы внутри значения сохраняются как текст JSON.
- Числа сохраняют все свои цифры, а даты ISO 8601 становятся датами или метками времени.

## Что нужно знать о PostgreSQL

- Десятичные числа сохраняют все цифры как numeric(p,s), а даты со смещением становятся timestamptz.
- Текст в PostgreSQL не может содержать символ NUL, поэтому он удаляется из значений, где встречается.
- Скрипт выполняется в одной транзакции, поэтому неудачная загрузка не оставляет ничего наполовину.

### Как каждый вид значений хранится в PostgreSQL

| Значение | PostgreSQL |
| --- | --- |
| Да и нет | `boolean` |
| Целые числа | `integer` |
| Большие целые числа | `bigint` |
| Десятичные числа | `numeric(p,s)` |
| Числа с плавающей точкой | `double precision` |
| Даты | `date` |
| Время суток | `time` |
| Даты со временем | `timestamp` |
| Даты со временем и смещением | `timestamptz` |
| Текст | `text` |

## Вопросы о JSON в PostgreSQL

### Как конвертировать JSON в PostgreSQL?

Перетащите файл в конвертер в верхней части этой страницы. Он находит заголовок, читает каждое значение и записывает скрипт для PostgreSQL, перечисляя каждое исправление. Скачайте скрипт и запустите его через psql.

### Какой структуры должен быть файл JSON?

Массив объектов, объект с таким массивом под ключом вроде data или по одному объекту в строке (NDJSON). Каждый ключ становится столбцом.

### Какие типы PostgreSQL используются?

Значения да и нет становятся boolean, целые числа integer, дробные numeric(p,s), даты date, даты со временем timestamp, а текст text. Размеры берутся по самому длинному значению в каждом столбце.

### Сохраняются ли ведущие нули в PostgreSQL?

Да. Код вроде 000481 остается текстом, поэтому PostgreSQL хранит его как text, а скрипт записывает как '000481'.

### Можно ли загрузить данные в PostgreSQL без скрипта?

Да, с IntoSQL Pro. Приложение для компьютера и командная строка подключаются к PostgreSQL и загружают строки напрямую, сначала создав таблицу.

### Насколько большим может быть файл JSON?

NDJSON, по одному объекту в строке, читается потоково, поэтому в браузере работают файлы в несколько гигабайт. Документ JSON читается целиком, поэтому его предел - память, которую браузер выделяет этой странице. Приложение для компьютера и командная строка принимают файлы любого размера.

## JSON в другие базы данных

- [Конвертация JSON в SQL](https://intosql.com/ru/json-v-sql)
- [Конвертация JSON в MySQL](https://intosql.com/ru/json-v-mysql)
- [Конвертация JSON в MariaDB](https://intosql.com/ru/json-v-mariadb)
- [Конвертация JSON в SQLite](https://intosql.com/ru/json-v-sqlite)
- [Конвертация JSON в SQL Server](https://intosql.com/ru/json-v-sql-server)
- [Конвертация JSON в Oracle](https://intosql.com/ru/json-v-oracle)

## Другие файлы в PostgreSQL

- [Конвертация Excel в PostgreSQL](https://intosql.com/ru/excel-v-postgresql)
- [Конвертация CSV в PostgreSQL](https://intosql.com/ru/csv-v-postgresql)
