Bir JSON Verisi SQL Server’a Yeni Bir Tablo Olarak Nasıl Kayıt Edilir
Merhaba, Bugün Sizlere Bir json verisinin SQL Server’a yeni bir tablo olarak nasıl kayıt edebileceğinizi göstereceğim
Bir JSON Verisi SQL Server’a Yeni Bir Tablo Olarak Nasıl Kayıt Edilir
Merhaba, Bugün Sizlere Bir json verisinin SQL Server’a yeni bir tablo olarak nasıl kayıt edebileceğinizi göstereceğim
https://zappysys.com/blog/wp-content/uploads/2018/03/json-to-sql-server-import-export.png
📦Kayıt Edeceğimiz JSON Verisi

💪JSON Verisini SQL Server’a Taşımanın Artı Yönlenleri
Yüksek Sorgu Performansı ve İndeksleme
JSON formatındaki verileri düz metin (NVARCHAR) olarak taramak her seferinde tüm tabloyu okumayı (Full Table Scan) gerektirir.
Veriyi sütunlara bölüp yeni bir tabloya kaydettiğinizde standart SQL indeksleri (PRIMARY KEY, CLUSTERED INDEX) tanımlayabilir ve sorgularınızı binlerce kat hızlandırabilirsiniz.
Gelişmiş Veri Bütünlüğü ve Veri Tipleri
JSON içindeki tüm değerler temelde metindir. OPENJSON ile yeni tabloya aktarırken INT, DATETIME veya DECIMAL gibi kesin veri tipleri atayarak veritabanı seviyesinde veri kalitesini ve tutarlılığını korursunuz.
Geliştirme Kolaylığı (Hızlı ETL)
Harici bir ETL aracı (SSIS, Python betiği veya C# kodu) yazmaya gerek kalmadan, sadece tek bir T-SQL sorgusuyla saniyeler içinde binlerce satırlık JSON dosyasını veritabanı tablosuna dönüştürebilirsiniz.
Depolama ve Bellek Optimizasyonu
Dağınık ve tekrarlayan JSON anahtar (key) kelimeleri yerine veriyi saf değerleriyle yapılandırılmış bir tabloda tutmak, SQL Server’ın sayfalamayı (paging) ve veri sıkıştırmayı çok daha verimli yapmasını sağlar.
🚨 Makaleyi Okumadan Önce Dikkat Etmeniz Gerekenler
⚠️ SQL Server Sürümü: SQL Server sürümünüzün 17.0.1110.1 veya üzeri olduğundan emin olun. Ayrıca sisteminizde SQL Server Management Studio (SSMS) aracının kurulu olması gerekmektedir.
⚠️ Gerekli Altyapı: Bu adımları uygulayabilmek için önceden oluşturulmuş aktif bir veri tabanına ihtiyacınız vardır.
⚠️ Veri Formatı: İçeri aktarma sihirbazının pürüzsüz çalışması için, elinizdeki .json uzantılı veri dosyasını önceden bir .csv dosyasına dönüştürmüş olmalısınız.
🛠️İşlemler
➤ Öncelikle SQL Server Managment Studio giriniz
➤ Şimdi, Veritabanınıza sağ tıklayın
Daha sonra Tasks seçeneğinin üzerine gelin
Son olarak da, Import data tıklayınız

➤ Bu ekranda devam ediniz

➤ Choose a Data Source — Bu ekranda ok ile gösterilen seçeneğe tıklayın

➤ Şimdi, Flat File Source bulun ve seçin

➤ Şu anda, ok ile işaret edilen Browse seçeneğine tıklayın
Burada, csv formatındaki dosyanızı seçiniz

➤ Şimdi devam ediniz
ℹ️ Preview seçeneğine tıklayarak, oluşacak yeni tablonun yapısını görebilirsiniz
ℹ️ Header rows to skip içeri aktarmaya çalıştığınız CSV dosyasının en üstünden kaç satırın tamamen göz ardı edileceğini (atlanacağını) belirten ayarlamadır
Burada örnek vermek gerekirse ilk 3 satırı atlamak istiyorum diyorsanız bunu 3 olarak işaretleyebilirsiniz

➤ Daha sonra, Destination seçeneğinin hemen sağ tarafındaki kutucuğa tıklayın ve Microsoft OLE DB Provider for SQL Server seçeneğini seçin

➤ Şimdi, devam ediniz

➤ Run immidiately seçeneğinin seçili olduğundan emin olun ve devam ediniz
❓Neden bu seçeneği işaretlemeliyiz
Anında Sonuç ve Hızlı Kontrol
İşlemi hemen başlatarak verilerin hedef tabloya doğru aktarılıp aktarılmadığını veya herhangi bir hata (veri tipi uyuşmazlığı vb.) oluşup oluşmadığını anında görmenizi sağlar.

➤ Finish seçeneğine tıklayın

✅ Eğer karşınıza aşağıdaki ekran çıkarsa işlem başarılı bir şekilde tamamlanmış demektir
Close ile bu sekmeyi kapatabilirsiniz

🎁 Bonus
Tablo’daki Verileri Gösterimi
Yine de kesin bir şekilde emin olabilmeniz için tablomuzdaki verileri gösteriyorum
✅ Gördüğünüz gibi veriler başarılı bir şekilde yüklenmiştir

📂Kaynaklar
[embed]
https://www.cozumpark.com/sql-serverda-json-turundeki-verileri-indexleme/
메타데이터
- post_id
- 1c8ee64dbe3b
- slug
- x-1c8ee64dbe3b
- url
- https://medium.com/@sevki6463/x-1c8ee64dbe3b
- canonical_url
- https://medium.com/@sevki6463/x-1c8ee64dbe3b
- author_url
- https://medium.com/@sevki6463
- status
- ok
- fetched_at
- 2026-06-17 18:03:35