Güncelleme Ağ

Veri Tabanı Nedir ve Nasıl Çalışır Yeni Başlayanlar İçin

Veri tabanı kavramıyla ilk karşılaştığım zamanı hatırlıyorum: bir arkadaşımın küçük işletmesi için basit bir müşteri listesi tutmam gerekiyordu. Excel dosyasıyla başladım, birkaç ay sonra dosya şişti, iki kişi aynı anda düzenlemeye çalışınca kayıtlar birbirine karıştı ve sonunda "acaba bunun doğru yolu ne?" diye sormaya başladım. İşte o soru beni veri tabanlarına götürdü. Şimdi geriye dönüp baktığımda, veri tabanı nedir sorusunun cevabını en baştan öğrenmiş olsaydım aylarca uğraşmaktan kurtulacağımı görüyorum. Bu yüzden burada teknik terimlere boğulmadan, kendi öğrenme sürecimde işime yarayan şeyleri anlatmak istiyorum.

Veri Tabanı Tam Olarak Nedir?

En yalın tanımıyla veri tabanı, bilgilerin düzenli bir şekilde saklandığı ve istendiğinde hızlıca geri getirilebildiği bir sistemdir. Buradaki kritik kelime "düzenli". Bir klasöre yüzlerce not atmakla, o notları etiketleyip tarihe göre sıralamak arasındaki fark neyse, dosya yığınıyla veri tabanı arasındaki fark da odur.

Bana en çok yardımcı olan benzetme kütüphane oldu. Bir kütüphanede kitaplar rastgele durmaz; raflar, konu başlıkları ve bir katalog sistemi vardır. Kataloğa bakıp "şu yazarın şu kitabı" dediğinizde saniyeler içinde yerini bulursunuz. Veri tabanı da tam olarak bu katalog mantığıyla çalışır. Kayıtları saklar, ama daha önemlisi onları bulmanızı sağlar.

Bir de şu ayrımı erken öğrenmek iyi olur: veri tabanı verinin kendisidir, veri tabanı yönetim sistemi ise o veriyi yöneten yazılımdır. MySQL, PostgreSQL, SQLite gibi isimleri duyduğunuzda bunlar yönetim sistemleridir; veriyi tutan sandığın kapağını açıp kapatan mekanizma gibi düşünün.

Temel Yapı: Tablo, Satır, Sütun

İlişkisel veri tabanları dediğimiz en yaygın tür, aslında birbirine bağlı tablolardan oluşur. Tablo mantığını kavradığım an gerisi çok kolaylaştı. Küçük bir örnek vereyim:

müşteri_noadşehirkayıt_tarihi
1Ayşeİzmir2023-04-11
2MehmetAnkara2023-04-15
3Zeynepİzmir2023-05-02

Burada her sütun bir bilgi türünü, her satır ise tek bir kaydı temsil eder. "müşteri_no" ise bu tabloda benzersiz kimliktir; yani iki farklı Mehmet olsa bile onları birbirinden ayırmanızı sağlar. Buna birincil anahtar deniyor ve gerçekten hayat kurtarıyor.

Asıl güç, tabloları birbirine bağladığınızda ortaya çıkıyor. Ayrı bir "siparişler" tablosu tutup içinde sadece müşteri_no yazarsanız, müşteri bilgilerini her siparişte tekrar tekrar yazmanız gerekmez. Adres değişince tek bir yerden güncellersiniz, tüm siparişler otomatik olarak doğru bilgiyi gösterir. Ben bunu anlayana kadar aynı bilgiyi üç ayrı yerde tutuyordum ve tahmin edeceğiniz gibi hep biri güncel kalıyordu.

Veri Tabanı Kullanmanın Somut Faydaları

Bu son madde özellikle önemli. Dosyalarınızı düzenli yedeklemenin yollarını anlattığım yazıdaki mantık burada da geçerli: veri tabanı ne kadar düzenli olsa da yedeği yoksa bir donanım arızasında her şey gider.

Gündelik Hayatta Nerede Karşımıza Çıkıyor?

Farkında olmasanız da günde onlarca veri tabanıyla etkileşime giriyorsunuz. Telefonunuzdaki rehber uygulaması bir veri tabanıdır. WhatsApp'ta mesaj geçmişinizde arama yaptığınızda arka planda bir sorgu çalışır. Gmail hesabınızda "şu kişiden gelen ekli mesajlar" filtresi kurduğunuzda yine aynı mantık devrededir.

Bankacılık uygulamasında hesap hareketlerini görmek, bir e-ticaret sitesinde ürünleri fiyata göre sıralamak, YouTube'un size video önermesi, bir arama motorunun sonuç listesi çıkarması… Hepsinin temelinde düzenli saklanmış ve indekslenmiş veri var. Hatta bilgisayarınızın yavaşlama nedenlerini araştırdığınızda karşınıza çıkan sistem günlükleri bile bir tür kayıt yapısıdır.

Öğrenmeye Nereden Başlamalı?

Kendi deneyimimden çıkardığım sıra şöyle oldu ve yeni başlayan birine de bunu öneririm:

  1. Önce tablo mantığını kağıt üzerinde kurun. Hangi bilgi hangi tabloda duracak, birbirine nasıl bağlanacak?
  2. SQL'in dört temel komutunu öğrenin: kayıt getirmek, eklemek, güncellemek ve silmek. Gerisi bunların üzerine kurulu.
  3. Kurulum derdi olmayan basit bir araçla pratik yapın. SQLite gibi tek dosyada çalışan bir sistemle başlamak motivasyonu koruyor.
  4. Kendi hayatınızdan bir örnek seçin: film listesi, aylık giderler, okuduğunuz kitaplar. Gerçek bir ihtiyaç varsa öğrenme çok daha kalıcı oluyor.
İlk veri tabanımı kurarken en büyük hatam, en baştan "profesyonel" bir yapı kurmaya çalışmaktı. Üç tabloyla başlayıp ihtiyaç doğdukça büyütmek çok daha sağlıklı bir yol.

Veri tabanı mantığını