---
title: "CSV dosyalarını SQL'e dönüştürün"
description: "CSV dosyalarını tarayıcıda PostgreSQL, MySQL, MariaDB, SQLite, SQL Server veya Oracle için SQL'e dönüştürün. Ücretsiz, dosyanız yüklenmez."
canonical: https://intosql.com/tr/csv-sql-donusturme
last_updated: 2026-10-15
---

# CSV dosyalarını SQL'e dönüştürün

CSV dosyanızı bırakın ve veritabanınızı seçin; CREATE TABLE ve INSERT ifadeleri içeren bir SQL betiği alın. Her sütuna bir tür verilir ve her düzeltme satırı ve sütunuyla listelenir.

## Tek CSV dosyası, altı veritabanı

Yukarıdaki örnek ventas_2024.csv ve sütunlarının her veritabanında aldığı tür.

| Dosyada | İlk değer | PostgreSQL | MySQL | MariaDB | SQLite | SQL Server | Oracle |
| --- | --- | --- | --- | --- | --- | --- | --- |
| Folio | `00412` | `text` | `varchar(8)` | `varchar(8)` | `TEXT` | `nvarchar(8)` | `VARCHAR2(8 CHAR)` |
| Cliente | `Peña Muñoz` | `text` | `varchar(16)` | `varchar(16)` | `TEXT` | `nvarchar(16)` | `VARCHAR2(16 CHAR)` |
| Ciudad | `Mérida` | `text` | `varchar(16)` | `varchar(16)` | `TEXT` | `nvarchar(16)` | `VARCHAR2(16 CHAR)` |
| Fecha | `15/02/2024` | `date` | `date` | `date` | `DATE` | `date` | `DATE` |
| Importe | `1.234,50` | `numeric(6,2)` | `decimal(6,2)` | `decimal(6,2)` | `NUMERIC(6,2)` | `decimal(6,2)` | `NUMBER(6,2)` |
| Pagado | `sí` | `boolean` | `tinyint(1)` | `tinyint(1)` | `BOOLEAN` | `bit` | `NUMBER(1)` |

## Betiği veritabanınıza yükleyin

İndirilen dosya düz bir .sql dosyasıdır. Her veritabanı onu kendi araçlarıyla çalıştırır.

### PostgreSQL

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

ON_ERROR_STOP, psql'in ilk hatada durmasını sağlar. Betik tek bir işlemde çalışır, bu yüzden başarısız bir yükleme veritabanını olduğu gibi bırakır. pgAdmin veya DBeaver'da betiği bir sorgu penceresinde açıp çalıştırın.

Betik olmadan:

```shell
intosql load ventas_2024.csv --into postgres://user@localhost/mydb
```

### MySQL

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

Betik utf8mb4'ü kendisi ayarlar; bu bayrak istemcinin de aynı şekilde göndermesini sağlar, böylece aksanlı harfler bozulmadan ulaşır. MySQL Workbench'te File, Run SQL Script'i seçip dosyayı belirleyin.

Betik olmadan:

```shell
intosql load ventas_2024.csv --into mysql://user@localhost/mydb
```

### MariaDB

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

Betik utf8mb4'ü kendisi ayarlar; bu bayrak istemcinin de aynı şekilde göndermesini sağlar, böylece aksanlı harfler bozulmadan ulaşır. HeidiSQL veya DBeaver'da betiği açıp çalıştırın.

Betik olmadan:

```shell
intosql load ventas_2024.csv --into mariadb://user@localhost/mydb
```

### SQLite

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

Veritabanı dosyası yoksa oluşturulur. Dönüştürücü, hiç komut gerektirmeyen hazır bir .sqlite veritabanı da indirir. DB Browser for SQLite'ta Execute SQL'i seçin, betiği açıp çalıştırın.

Betik olmadan:

```shell
intosql load ventas_2024.csv --into ventas_2024.db
```

### SQL Server

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

-f 65001 dosyayı UTF-8 olarak okur, böylece aksanlı harfler ve ñ yazıldığı gibi ulaşır. SQL Server Management Studio veya Azure Data Studio'da dosyayı açıp Execute'u seçin.

### Oracle

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

Betik yerine koyma değişkenlerini kapatır (SET DEFINE OFF), böylece verinizdeki & işareti olduğu gibi kalır. SQL Developer'da betiği açıp Run Script'i (F5) seçin.

## IntoSQL'in CSV dosyalarında okudukları

- Kodlama algılanır, Windows-1252 ve UTF-16 dahil; böylece aksanlı harfler ve ñ bozulmadan gelir.
- Ayırıcı algılanır: virgül, noktalı virgül, sekme veya dikey çizgi. Noktalı virgülle, 1.234,50 gibi ondalık virgüller sayı olarak okunur.
- Tırnak içindeki değerler ayırıcı ve satır sonu içerebilir.

## Her veritabanı hakkında bilmeniz gerekenler

- Dosya açıldıktan sonra veritabanını seçin: her biri desteklediği türleri alır.

### Her değer türü her veritabanında nasıl saklanır

| Değer | PostgreSQL | MySQL | MariaDB | SQLite | SQL Server | Oracle |
| --- | --- | --- | --- | --- | --- | --- |
| Evet ve hayır | `boolean` | `tinyint(1)` | `tinyint(1)` | `BOOLEAN` | `bit` | `NUMBER(1)` |
| Tam sayılar | `integer` | `int` | `int` | `INTEGER` | `int` | `NUMBER(10)` |
| Büyük tam sayılar | `bigint` | `bigint` | `bigint` | `INTEGER` | `bigint` | `NUMBER(19)` |
| Ondalık sayılar | `numeric(p,s)` | `decimal(p,s) · double` | `decimal(p,s) · double` | `NUMERIC(p,s) · TEXT` | `decimal(p,s)` | `NUMBER(p,s)` |
| Kayan noktalı sayılar | `double precision` | `double` | `double` | `REAL` | `float` | `BINARY_DOUBLE` |
| Tarihler | `date` | `date` | `date` | `DATE` | `date` | `DATE` |
| Günün saatleri | `time` | `time(6) · time` | `time(6) · time` | `TIME` | `time` | `INTERVAL DAY(0) TO SECOND` |
| Saatli tarihler | `timestamp` | `datetime(6) · datetime` | `datetime(6) · datetime` | `DATETIME` | `datetime2` | `TIMESTAMP` |
| Saatli ve saat farkı olan tarihler | `timestamptz` | `datetime(6) · datetime` | `datetime(6) · datetime` | `DATETIME` | `datetimeoffset` | `TIMESTAMP WITH TIME ZONE` |
| Metin | `text` | `varchar(n) · text · mediumtext · longtext` | `varchar(n) · text · mediumtext · longtext` | `TEXT` | `nvarchar(n) · nvarchar(max)` | `VARCHAR2(n CHAR) · CLOB` |

## CSV dosyasından SQL'e sorular

### CSV dosyasını SQL'e nasıl dönüştürürüm?

Dosyanızı bu sayfanın üstündeki dönüştürücüye bırakın ve veritabanınızı seçin: PostgreSQL, MySQL, MariaDB, SQLite, SQL Server veya Oracle. Her biri desteklediği türleri alır. Betiği indirip veritabanınızda çalıştırın.

### CSV dosyam noktalı virgül veya sekme kullanıyorsa?

Ayırıcı algılanır: virgül, noktalı virgül, sekme veya dikey çizgi. Daha fazla seçenek altından da ayarlayabilirsiniz. Noktalı virgülle, 1.234,50 gibi ondalık virgüller sayı olarak okunur.

### Her veritabanında hangi türleri kullanır?

Her veritabanı kendi türlerini alır: evet/hayır değerleri PostgreSQL'de boolean, MySQL ve MariaDB'de tinyint(1), SQL Server'da bit ve Oracle'da NUMBER(1) olur. Bu sayfadaki tablo her değer türünü listeler.

### Baştaki sıfırları korur mu?

Evet. 00412 gibi bir kod her veritabanında metin olarak kalır ve '00412' olarak yazılır, böylece hiçbir sıfır kaybolmaz.

### Verileri betik olmadan yükleyebilir mi?

Evet. Komut satırı SQLite'a ücretsiz yükler; IntoSQL Pro ile masaüstü uygulaması ve komut satırı PostgreSQL, MySQL ve MariaDB'ye de yükler. SQL Server ve Oracle için betiği çalıştırın.

### CSV dosyası ne kadar büyük olabilir?

Tarayıcı CSV dosyasını akış halinde okur, bu yüzden birkaç gigabaytlık dosyalar çalışır. Apple M4'lü bir dizüstü bilgisayarda komut satırı bir milyon satırlık 174 MB'lık bir CSV dosyasını bir saniyeden kısa sürede dönüştürür.

## CSV dosyasından diğer veritabanlarına

- [CSV dosyalarını PostgreSQL için dönüştürün](https://intosql.com/tr/csv-postgresql-donusturme)
- [CSV dosyalarını MySQL için dönüştürün](https://intosql.com/tr/csv-mysql-donusturme)
- [CSV dosyalarını MariaDB için dönüştürün](https://intosql.com/tr/csv-mariadb-donusturme)
- [CSV dosyalarını SQLite için dönüştürün](https://intosql.com/tr/csv-sqlite-donusturme)
- [CSV dosyalarını SQL Server için dönüştürün](https://intosql.com/tr/csv-sql-server-donusturme)
- [CSV dosyalarını Oracle için dönüştürün](https://intosql.com/tr/csv-oracle-donusturme)

## Diğer dosyalardan SQL için

- [Excel dosyalarını SQL'e dönüştürün](https://intosql.com/tr/excel-sql-donusturme)
- [JSON dosyalarını SQL'e dönüştürün](https://intosql.com/tr/json-sql-donusturme)
