---
title: "Конвертация Excel в SQL"
description: "Конвертируйте файлы Excel в SQL для PostgreSQL, MySQL, MariaDB, SQLite, SQL Server или Oracle в браузере. Бесплатно, файл не загружается."
canonical: https://intosql.com/ru/excel-v-sql
last_updated: 2026-10-15
---

# Конвертация Excel в SQL

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

## Один файл Excel, шесть баз данных

Пример выше, clientes_2024.xlsx, и тип, который каждый его столбец получает в каждой базе данных.

| В файле | Первое значение | PostgreSQL | MySQL | MariaDB | SQLite | SQL Server | Oracle |
| --- | --- | --- | --- | --- | --- | --- | --- |
| Nº Cliente | `00127` | `text` | `varchar(8)` | `varchar(8)` | `TEXT` | `nvarchar(8)` | `VARCHAR2(8 CHAR)` |
| Nombre | `Peña Muñoz` | `text` | `varchar(16)` | `varchar(16)` | `TEXT` | `nvarchar(16)` | `VARCHAR2(16 CHAR)` |
| C.P. | `01234` | `text` | `varchar(8)` | `varchar(8)` | `TEXT` | `nvarchar(8)` | `VARCHAR2(8 CHAR)` |
| Alta | `03/02/2024` | `date` | `date` | `date` | `DATE` | `date` | `DATE` |
| Activo | `sí` | `boolean` | `tinyint(1)` | `tinyint(1)` | `BOOLEAN` | `bit` | `NUMBER(1)` |
| Saldo | `1.234,50` | `numeric(6,2)` | `decimal(6,2)` | `decimal(6,2)` | `NUMERIC(6,2)` | `decimal(6,2)` | `NUMBER(6,2)` |

## Загрузите скрипт в свою базу данных

Вы скачиваете обычный файл .sql. Каждая база данных запускает его своими средствами.

### PostgreSQL

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

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

Без скрипта:

```shell
intosql load clientes_2024.xlsx --into postgres://user@localhost/mydb
```

### MySQL

```shell
mysql --default-character-set=utf8mb4 mydb < clientes_2024.mysql.sql
```

Скрипт сам задает utf8mb4; флаг заставляет клиент передавать данные так же, поэтому кириллица и другие символы доходят без искажений. В MySQL Workbench выберите File, Run SQL Script и укажите файл.

Без скрипта:

```shell
intosql load clientes_2024.xlsx --into mysql://user@localhost/mydb
```

### MariaDB

```shell
mariadb --default-character-set=utf8mb4 mydb < clientes_2024.mariadb.sql
```

Скрипт сам задает utf8mb4; флаг заставляет клиент передавать данные так же, поэтому кириллица и другие символы доходят без искажений. В HeidiSQL или DBeaver откройте скрипт и выполните его.

Без скрипта:

```shell
intosql load clientes_2024.xlsx --into mariadb://user@localhost/mydb
```

### SQLite

```shell
sqlite3 clientes_2024.db < clientes_2024.sqlite.sql
```

Файл базы данных создается, если его нет. Конвертер также скачивает готовую базу .sqlite, вообще без команд. В DB Browser for SQLite выберите Execute SQL, откройте скрипт и выполните его.

Без скрипта:

```shell
intosql load clientes_2024.xlsx --into clientes_2024.db
```

### SQL Server

```shell
sqlcmd -S localhost -d mydb -f 65001 -i clientes_2024.sql_server.sql
```

-f 65001 читает файл как UTF-8, поэтому кириллица и ñ доходят в том виде, в котором записаны. В SQL Server Management Studio или Azure Data Studio откройте файл и выберите Execute.

### Oracle

```shell
sqlplus user@//localhost/mydb @clientes_2024.oracle.sql
```

Скрипт отключает переменные подстановки (SET DEFINE OFF), поэтому амперсанд в ваших данных остается амперсандом. В SQL Developer откройте скрипт и выберите Run Script (F5).

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

- Строка заголовков находится, даже если над ней есть названия или заметки, а строка итогов в конце не попадает в результат.
- Даты, сохраненные как порядковые номера Excel, становятся настоящими датами, и в системе дат 1900, и в системе 1904.
- Коды с ведущими нулями, например 00127, остаются текстом. Если в книге несколько листов, вы выбираете лист.

## Что нужно знать о каждой базе данных

- Выберите базу данных после открытия файла: каждая получает типы, которые поддерживает.

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

| Значение | PostgreSQL | MySQL | MariaDB | SQLite | SQL Server | Oracle |
| --- | --- | --- | --- | --- | --- | --- |
| Да и нет | `boolean` | `tinyint(1)` | `tinyint(1)` | `BOOLEAN` | `bit` | `NUMBER(1)` |
| Целые числа | `integer` | `int` | `int` | `INTEGER` | `int` | `NUMBER(10)` |
| Большие целые числа | `bigint` | `bigint` | `bigint` | `INTEGER` | `bigint` | `NUMBER(19)` |
| Десятичные числа | `numeric(p,s)` | `decimal(p,s) · double` | `decimal(p,s) · double` | `NUMERIC(p,s) · TEXT` | `decimal(p,s)` | `NUMBER(p,s)` |
| Числа с плавающей точкой | `double precision` | `double` | `double` | `REAL` | `float` | `BINARY_DOUBLE` |
| Даты | `date` | `date` | `date` | `DATE` | `date` | `DATE` |
| Время суток | `time` | `time(6) · time` | `time(6) · time` | `TIME` | `time` | `INTERVAL DAY(0) TO SECOND` |
| Даты со временем | `timestamp` | `datetime(6) · datetime` | `datetime(6) · datetime` | `DATETIME` | `datetime2` | `TIMESTAMP` |
| Даты со временем и смещением | `timestamptz` | `datetime(6) · datetime` | `datetime(6) · datetime` | `DATETIME` | `datetimeoffset` | `TIMESTAMP WITH TIME ZONE` |
| Текст | `text` | `varchar(n) · text · mediumtext · longtext` | `varchar(n) · text · mediumtext · longtext` | `TEXT` | `nvarchar(n) · nvarchar(max)` | `VARCHAR2(n CHAR) · CLOB` |

## Вопросы о Excel в SQL

### Как конвертировать Excel в SQL?

Перетащите файл в конвертер в верхней части этой страницы и выберите базу данных: PostgreSQL, MySQL, MariaDB, SQLite, SQL Server или Oracle. Каждая получает типы, которые поддерживает. Скачайте скрипт и запустите его в своей базе.

### Какой лист книги конвертируется?

Первый видимый лист. Если в книге их несколько, появляется параметр Лист, где можно выбрать другой.

### Какие типы используются в каждой базе данных?

У каждой базы свои: значения да и нет - это boolean в PostgreSQL, tinyint(1) в MySQL и MariaDB, bit в SQL Server и NUMBER(1) в Oracle. Таблица на этой странице перечисляет каждый вид значений.

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

Да. Код вроде 00127 остается текстом в любой базе данных и записывается как '00127', поэтому ни один ноль не теряется.

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

Да. Командная строка бесплатно загружает в SQLite, а с IntoSQL Pro приложение для компьютера и командная строка загружают в PostgreSQL, MySQL и MariaDB. Для SQL Server и Oracle запустите скрипт.

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

В браузере книга читается целиком, поэтому предел - это память, которую браузер выделяет этой странице. Приложение для компьютера и командная строка принимают книги любого размера; на ноутбуке с Apple M4 командная строка конвертирует книгу 117 МБ с миллионом строк примерно за секунду.

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

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

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

- [Конвертация CSV в SQL](https://intosql.com/ru/csv-v-sql)
- [Конвертация JSON в SQL](https://intosql.com/ru/json-v-sql)
