---
title: "Excel omzetten naar SQL"
description: "Zet Excel-bestanden in je browser om naar SQL voor PostgreSQL, MySQL, MariaDB, SQLite, SQL Server of Oracle. Gratis, zonder upload."
canonical: https://intosql.com/nl/excel-naar-sql
last_updated: 2026-10-15
---

# Excel omzetten naar SQL

Zet je Excel-bestand neer en kies je database voor een SQL-script met CREATE TABLE- en INSERT-statements. Elke kolom krijgt een type, en elke correctie wordt vermeld met rij en kolom.

## Eén Excel-bestand, zes databases

Het voorbeeld hierboven, clientes_2024.xlsx, en het type dat elke kolom in elke database krijgt.

| In het bestand | Eerste waarde | 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)` |

## Het script in je database laden

De download is een standaard .sql-bestand. Elke database voert het uit met haar eigen tools.

### PostgreSQL

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

ON_ERROR_STOP laat psql stoppen bij de eerste fout. Het script draait in één transactie, dus een mislukte import laat de database zoals hij was. Open het script in pgAdmin of DBeaver in een queryvenster en voer het uit.

Zonder script:

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

### MySQL

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

Het script stelt zelf utf8mb4 in; de vlag laat de client het op dezelfde manier versturen, zodat accenten intact aankomen. Kies in MySQL Workbench File, Run SQL Script en selecteer het bestand.

Zonder script:

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

### MariaDB

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

Het script stelt zelf utf8mb4 in; de vlag laat de client het op dezelfde manier versturen, zodat accenten intact aankomen. Open het script in HeidiSQL of DBeaver en voer het uit.

Zonder script:

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

### SQLite

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

Het databasebestand wordt aangemaakt als het nog niet bestaat. De converter downloadt ook een kant-en-klare .sqlite-database, zonder enige opdracht. Kies in DB Browser for SQLite Execute SQL, open het script en voer het uit.

Zonder script:

```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 leest het bestand als UTF-8, zodat accenten en ñ aankomen zoals ze geschreven zijn. Open het bestand in SQL Server Management Studio of Azure Data Studio en kies Execute.

### Oracle

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

Het script zet substitutievariabelen uit (SET DEFINE OFF), zodat een ampersand in je data een ampersand blijft. Open het script in SQL Developer en kies Run Script (F5).

## Wat IntoSQL leest in Excel-bestanden

- De kopregel wordt gevonden, ook als er titels of notities boven staan, en een totaalrij aan het einde wordt weggelaten.
- Datums die als Excel-serienummers zijn opgeslagen, worden echte datums, in zowel het 1900- als het 1904-datumsysteem.
- Codes met voorloopnullen, zoals 00127, blijven tekst. Heeft een werkmap meerdere bladen, dan kies je het blad.

## Wat je moet weten over elke database

- Kies de database zodra het bestand open is: elke database krijgt de typen die hij ondersteunt.

### Hoe elk soort waarde in elke database wordt opgeslagen

| Waarde | PostgreSQL | MySQL | MariaDB | SQLite | SQL Server | Oracle |
| --- | --- | --- | --- | --- | --- | --- |
| Ja en nee | `boolean` | `tinyint(1)` | `tinyint(1)` | `BOOLEAN` | `bit` | `NUMBER(1)` |
| Gehele getallen | `integer` | `int` | `int` | `INTEGER` | `int` | `NUMBER(10)` |
| Grote gehele getallen | `bigint` | `bigint` | `bigint` | `INTEGER` | `bigint` | `NUMBER(19)` |
| Decimale getallen | `numeric(p,s)` | `decimal(p,s) · double` | `decimal(p,s) · double` | `NUMERIC(p,s) · TEXT` | `decimal(p,s)` | `NUMBER(p,s)` |
| Drijvendekommagetallen | `double precision` | `double` | `double` | `REAL` | `float` | `BINARY_DOUBLE` |
| Datums | `date` | `date` | `date` | `DATE` | `date` | `DATE` |
| Tijdstippen | `time` | `time(6) · time` | `time(6) · time` | `TIME` | `time` | `INTERVAL DAY(0) TO SECOND` |
| Datums met tijd | `timestamp` | `datetime(6) · datetime` | `datetime(6) · datetime` | `DATETIME` | `datetime2` | `TIMESTAMP` |
| Datums met tijd en tijdverschil | `timestamptz` | `datetime(6) · datetime` | `datetime(6) · datetime` | `DATETIME` | `datetimeoffset` | `TIMESTAMP WITH TIME ZONE` |
| Tekst | `text` | `varchar(n) · text · mediumtext · longtext` | `varchar(n) · text · mediumtext · longtext` | `TEXT` | `nvarchar(n) · nvarchar(max)` | `VARCHAR2(n CHAR) · CLOB` |

## Vragen over Excel naar SQL

### Hoe zet ik Excel om naar SQL?

Zet je bestand neer op de converter bovenaan deze pagina en kies je database: PostgreSQL, MySQL, MariaDB, SQLite, SQL Server of Oracle. Elke database krijgt de types die ze ondersteunt. Download het script en voer het uit in je database.

### Welk blad van de werkmap wordt geconverteerd?

Het eerste zichtbare blad. Heeft een werkmap er meer dan één, dan verschijnt de optie Blad, zodat je een ander kunt kiezen.

### Welke types gebruikt het in elke database?

Elke database krijgt haar eigen types: ja/nee-waarden zijn boolean in PostgreSQL, tinyint(1) in MySQL en MariaDB, bit in SQL Server en NUMBER(1) in Oracle. De tabel op deze pagina toont elke soort waarde.

### Blijven voorloopnullen behouden?

Ja. Een code zoals 00127 blijft in elke database tekst, geschreven als '00127', dus er gaat geen nul verloren.

### Kan het de data zonder script laden?

Ja. De opdrachtregel laadt gratis in SQLite, en met IntoSQL Pro laden de desktopapp en de opdrachtregel in PostgreSQL, MySQL en MariaDB. Voor SQL Server en Oracle voer je het script uit.

### Hoe groot mag het Excel-bestand zijn?

In de browser wordt een werkmap in zijn geheel gelezen, dus de grens is het geheugen dat de browser deze pagina geeft. De desktopapp en de opdrachtregel nemen werkmappen van elke grootte; op een laptop met Apple M4 converteert de opdrachtregel een werkmap van 117 MB met een miljoen rijen in ongeveer een seconde.

## Excel naar andere databases

- [Excel omzetten naar PostgreSQL](https://intosql.com/nl/excel-naar-postgresql)
- [Excel omzetten naar MySQL](https://intosql.com/nl/excel-naar-mysql)
- [Excel omzetten naar MariaDB](https://intosql.com/nl/excel-naar-mariadb)
- [Excel omzetten naar SQLite](https://intosql.com/nl/excel-naar-sqlite)
- [Excel omzetten naar SQL Server](https://intosql.com/nl/excel-naar-sql-server)
- [Excel omzetten naar Oracle](https://intosql.com/nl/excel-naar-oracle)

## Andere bestanden naar SQL

- [CSV omzetten naar SQL](https://intosql.com/nl/csv-naar-sql)
- [JSON omzetten naar SQL](https://intosql.com/nl/json-naar-sql)
