Araca geç
ViewCSV
Dosya yüklenmez

CSV’yi SQLite’a dönüştürün

orders.csv· ÖRNEK VERİ15 satır · 8 sütun
Değer türleri
Metin her değeri tam olarak korur. Algılama, tüm değerleri uyan sütunlarda INTEGER ve REAL kullanır.
orders.csv
#order_idcustomercityproductquantityunit_priceorder_datestatus
1001041Yusuf DemirAnkaraCoffee beans 1kg2127.752026-01-27paid
2001042Asel YıldızAnkaraNotebook A55153.282026-02-11shipped
3001043Ömer YıldırımAdanaDesk lamp8216.502026-03-20shipped
4001044Ecrin DoğanAdanaNotebook A55141.312026-04-09pending
5001045Azra DemirEskişehirDesk lamp9·2026-05-16shipped
6001046Yusuf AydınİzmirCoffee beans 1kg287.812026-06-23shipped
7001047 Ömer Aydın İzmirChair, ergonomic880.582026-07-17shipped
8001048Mustafa ArslanEskişehirChair, ergonomic4127.602026-08-21shipped
9001049Kerem DemirİzmirMonitor 27"7223.282026-09-08paid
10001050Asel DoğanAnkaraDesk lamp5244.392026-01-21shipped
11001051Asel ÖzdemirAntalyaDesk lamp7213.462026-02-08refunded
12001052Ömer KayaAntalyaCoffee beans 1kg9118.002026-03-16refunded
13001053Ömer AydınBursaCoffee beans 1kg2121.812026-04-13refunded
14001054Zeynep YıldırımAdanaUSB-C cable7184.522026-05-26paid
15001043Ömer YıldırımAdanaDesk lamp8216.502026-03-20shipped

15 satır · 1 dosya assets.viewcsv.app adresinden bir kez indirilen SQLite motorunu (WebAssembly) kullanır. Verileriniz bu sekmede kalır.

Bir CSV dosyası açın veya yapıştırın, Tablo adı alanını kontrol edin ve SQLite indir düğmesini seçin. Tüm satırları içeren tek tablolu bir .sqlite veritabanı dosyası elde edersiniz; sqlite3 kabuğu, DB Browser for SQLite, Python veya herhangi bir SQLite kütüphanesiyle açılmaya hazırdır. Varsayılan olarak her sütun TEXT olur; böylece 000417 yine 000417 kalır. SQLite motoru tarayıcınızda WebAssembly olarak çalışır; CSV hiçbir zaman yüklenmez.

CSV, SQLite’a nasıl dönüştürülür?

  1. Bir .csv, .tsv veya .txt dosyası açın, araca sürükleyip bırakın ya da satırları yapıştırın. Girdi altındaki tabloyu kontrol edin; gerekirse ayırıcıyı, başlık satırını veya kodlamayı İçeri aktarma ayarları altından belirleyin.
  2. Tablo adı alanını kontrol edin. Ad, boşlukları ve noktalama işaretleri alt çizgiye çevrilmiş dosya adıyla başlar; yani orders 2026.csv, orders_2026 olur.
  3. Değer türleri, isteğe bağlı bir Birincil anahtar ve Boş hücreleri NULL olarak yaz ayarını seçin.
  4. SQLite indir düğmesini seçin, ardından dosyayı açın; örneğin sqlite3 orders.sqlite ve SELECT * FROM orders LIMIT 10; ile.

İlk dönüştürme, SQLite motorunu (WebAssembly’ye derlenmiş sql.js) assets.viewcsv.app adresinden bir kez indirir. Bu indirme başarısız olursa araç bir hata gösterir ve yeniden deneyebilirsiniz; dosyanız bu cihazda kalır.

Aynı ayarlarla çok sayıda dosya dönüştürmek için Toplu işlem: birden çok dosyayı dönüştür seçeneğini seçin. Her dosya, o dosyanın adını taşıyan bir tabloyla kendi veritabanı olur ve hepsi tek bir ZIP olarak birlikte iner. Toplu işlemde her dosya en fazla 25 MB olmalıdır.

Veritabanı neleri içerir?

CREATE TABLE "name" (…) ile oluşturulmuş, her CSV sütunu için özgün sırasıyla bir sütun içeren ve tüm satırların tek bir işlemde (transaction) eklendiği tek bir tablo. Ek dizin, görünüm veya kimlik sütunu yoktur.

Tablo ve sütun adlarıTam yazıldıkları gibi ve çift tırnak içinde kullanılır; böylece boşluklar, noktalama işaretleri, ayrılmış sözcükler ve Latin dışı adlar (Türkçe karakterli adlar dahil) çalışır: sorgularda "order date" biçiminde yazın. Boş bir başlık Column 3, yinelenen bir başlık name (2) olur.
Tüm değerleri metin olarak tutVarsayılan. Her sütun TEXT olarak tanımlanır ve her değeri tam yazıldığı gibi saklar.
Sayıları ve true/false değerlerini algılaBoş olmayan değerlerinin tümü baştaki sıfırı olmayan tam sayılar olan bir sütun INTEGER olur; en fazla 15 anlamlı basamaklı ondalık sayılar REAL olur; true/false sütunları, SQLite’ta mantıksal tür olmadığı için 1 ve 0 tutan INTEGER olur. Tarihler ve diğer her şey TEXT olarak kalır.
Birincil anahtarİsteğe bağlı. Seçilen sütun PRIMARY KEY olarak tanımlanır. Değerleri benzersiz olmalı ve boş olmamalıdır; aksi hâlde araç dosyayı yazmadan önce durur. Algılanan bir tam sayı anahtarı, SQLite’ın rowid takma adı olan INTEGER PRIMARY KEY olur.
Boş hücreleri NULL olarak yazVarsayılan olarak açıktır. Boş hücreleri boş metin '' olarak saklamak için kapatın.

Tırnaklı CSV değerlerinin içindeki satır sonları, tırnaklar ve virgüller değerin içinde değişmeden saklanır.

Sorun giderme

  • Dönüştürme birincil anahtarda duruyor. Seçilen sütunda boş veya tekrarlanan bir değer var. Yinelenenleri CSV doğrula veya CSV görüntüleyici ile bulun, başka bir sütun seçin ya da Birincil anahtar ayarını Yok yapın.
  • Motor indirilemedi. SQLite WebAssembly dosyası assets.viewcsv.app adresinden gelir. Bağlantınızı, güvenlik duvarınızı veya içerik engelleyicinizi kontrol edip yeniden deneyin.
  • `SUM()` bir sütunu metin olarak ele alıyor. Sütun TEXT. Sayıları ve true/false değerlerini algıla ile yeniden dönüştürün; yine metin kalırsa bir değer sade sayı değildir (1,234, 12 kg, 007). Ya da SQL’de dönüştürün: CAST(total AS REAL).
  • Dosya bu araç için çok büyük. SQLite dönüştürmesi 25 MB, 100.000 satır, 250 sütun ve 2 milyon hücreye kadar dosyalarla çalışır. Daha büyük bir dosya için büyük dosyaları akışla işleyen CSV’den SQL’e aracıyla bir betik oluşturun ve onu sqlite3 ile çalıştırın.

Sınırlar ve gizlilik

CSV dosyasının tarayıcı çalışma alanında açılabilmesi gerekir: en fazla 25 MB, 100.000 satır, 250 sütun ve 2 milyon hücre. Veritabanı bellekte oluşturulur ve tek bir dosya olarak dışa aktarılır.

Motor bu sekmede arka plandaki bir işçide çalışır; böylece sayfa yanıt vermeye devam eder ve İptal işlemi durdurur. Yalnızca motor dosyası indirilir; CSV ve veritabanı hiçbir zaman cihazınızdan çıkmaz.

Örnek

Baştaki sıfırlı kimlikler, boş bir tarih ve iki satırlık bir not içeren bir sipariş dosyası; Sayıları ve true/false değerlerini algıla, orders tablo adı ve Birincil anahtar olarak order_id ile dönüştürüldü, ardından sqlite3 kabuğuyla açıldı. total, REAL; paid, 1/0 değerli INTEGER oldu; order_id ve shipped_on ise TEXT kaldı. Varsayılan Tüm değerleri metin olarak tut ile altı sütunun tamamı TEXT olur ve total değeri 129.50 olarak kalır.

CSV
order_id,customer,total,paid,shipped_on,note
000417,"Okafor, Ada",129.50,true,2026-04-02,
000418,Mei Tan,15,false,,"Leave at door
side gate"
SQLite (sqlite3 kabuğu)
sqlite> .schema
CREATE TABLE "orders" ("order_id" TEXT PRIMARY KEY, "customer" TEXT, "total" REAL, "paid" INTEGER, "shipped_on" TEXT, "note" TEXT);

sqlite> SELECT order_id, total, typeof(total), paid, shipped_on, quote(note) FROM orders;
000417|129.5|real|1|2026-04-02|NULL
000418|15.0|real|0||'Leave at door
side gate'

Sık sorulan sorular

Bu araçla CSV’den SQL’e arasındaki fark nedir?

Bu sayfa, doğrudan açabileceğiniz bitmiş bir SQLite veritabanı dosyası verir. CSV’den SQL’e ise SQLite ya da PostgreSQL, MySQL veya SQL Server için kendiniz çalıştıracağınız CREATE TABLE ve INSERT ifadelerinden oluşan bir metin betiği yazar ve 25 MB’tan büyük dosyaları akışla işleyebilir.

CSV’yi mevcut bir veritabanına ekleyebilir miyim?

Doğrudan hayır; her dönüştürme tek tablolu yeni bir veritabanı oluşturur. Bunu mevcut veritabanınıza ATTACH 'orders.sqlite' AS src; ile bağlayın ve satırları INSERT INTO … SELECT * FROM src.orders; ile kopyalayın.

true ve false neden 1 ve 0 olarak saklanıyor?

SQLite’ta mantıksal bir depolama sınıfı yoktur; mantıksal değerler tam sayıdır. Sayıları ve true/false değerlerini algıla seçiliyken true, 1; false, 0 olur. Metin modunda bunlar true ve false metinleri olarak kalır.

Standartlar ve kaynaklar