💻 Teknoloji

Veritabanı Öğrenmeye Başlamak: SQL ve Tasarım İçin Pratik Yol Haritası

📅 7 dk okuma ✍️ SolveItHow Editorial Team
Veritabanı Öğrenmeye Başlamak: SQL ve Tasarım İçin Pratik Yol Haritası
Hızlı Cevap

Veritabanı öğrenmeye PostgreSQL veya SQLite gibi ücretsiz bir veritabanı kurarak başlayın. Ardından temel SQL komutlarını (SELECT, INSERT, UPDATE, DELETE) öğrenin ve basit bir proje yaparak pekiştirin.

Kişisel Deneyim
eski Excel bağımlısı, şimdiki veritabanı meraklısı

"Üniversitede staj yaparken, 10.000 satırlık bir Excel dosyasını filtrelemek için saatler harcıyordum. Bir gün takım liderim gelip "SELECT * FROM musteri WHERE sehir = 'İstanbul'" yazdı ve 2 saniyede sonucu aldı. O an veritabanı öğrenmem gerektiğini anladım. İlk başta SQL komutlarını ezberlemeye çalıştım ama çok sıkıcıydı. Sonra kendi küçük kütüphane projemi yaparak öğrendim."

İlk iş yerimde, şirketin müşteri verilerinin olduğu dev bir Excel dosyasına bakıp "Bunu nasıl sorgulayacağım?" diye düşündüğümü hatırlıyorum. O zamanlar veritabanı nedir bilmiyordum, sadece "SQL" diye bir şey duymuştum. Sonra bir arkadaşım "PostgreSQL kur, şu basit sorguları dene" dedi. İşte o an başladı her şey. Veritabanı öğrenmek sandığınız kadar zor değil, sadece doğru adımlarla başlamak gerekiyor.

🔍 Bu Neden Olur

Çoğu kişi veritabanı öğrenmeye kalkıştığında ya teorik kitaplara dalıp sıkılıyor ya da hemen karmaşık konulara atlayıp kayboluyor. Oysa veritabanı öğrenmek aslında bir dil öğrenmek gibidir: önce temel kelimeleri (SELECT, WHERE), sonra cümle kurmayı (JOIN), en son da edebiyatı (performans optimizasyonu) öğrenirsiniz. Standart tavsiyeler genelde ya çok soyut ya da çok ileri seviye oluyor. Bu yüzden somut, adım adım bir yaklaşım şart.

🔧 5 Çözümler

1
Ücretsiz bir veritabanı kur ve ilk tabloyu oluştur
🟢 Easy ⏱ 30 dakika

PostgreSQL veya SQLite kurarak veritabanı ortamını hazırla ve ilk tabloyu oluştur.

  1. 1
    PostgreSQL'i indir ve kur — PostgreSQL'in resmi sitesinden işletim sistemine uygun sürümü indir. Kurulum sırasında şifre belirle (örneğin '1234').
  2. 2
    pgAdmin'i aç ve yeni bir veritabanı oluştur — pgAdmin arayüzünde 'Databases' sağ tıkla -> Create -> Database. Adını 'kutuphane' yap.
  3. 3
    SQL sorgu aracını aç ve ilk tabloyu oluştur — Tools -> Query Tool'a tıkla. Şu kodu yaz: CREATE TABLE kitaplar (id SERIAL PRIMARY KEY, ad VARCHAR(100), yazar VARCHAR(50)); Çalıştır.
💡 SQLite kullanmak istersen, DB Browser for SQLite'ı indir. Hiç kurulum gerektirmez, dosyayla çalışır.
Önerilen Ürün
PostgreSQL 16 (ücretsiz yazılım)
Bu neden işe yarar: Ücretsiz ve güçlü bir veritabanı; öğrenirken gerçek bir ortamda çalışmış olursun.
Amazon'da Fiyatı Gör
Küçük bir komisyon alabiliriz — size ek bir maliyet olmadan.
2
Temel SQL komutlarını ezberleme, uygulayarak öğren
🟢 Easy ⏱ 2 saat

SELECT, INSERT, UPDATE, DELETE komutlarını örnek verilerle deneyerek öğren.

  1. 1
    Tablonu verilerle doldur — INSERT INTO kitaplar (ad, yazar) VALUES ('Suç ve Ceza', 'Dostoyevski'); gibi 5-10 kayıt ekle.
  2. 2
    SELECT ile sorgula — SELECT * FROM kitaplar; tümünü getir. WHERE ile filtrele: SELECT * FROM kitaplar WHERE yazar = 'Dostoyevski';
  3. 3
    UPDATE ile güncelle — UPDATE kitaplar SET ad = 'Savaş ve Barış' WHERE id = 1; gibi bir güncelleme yap.
  4. 4
    DELETE ile sil — DELETE FROM kitaplar WHERE id = 3; ile bir kaydı sil. Sonucu kontrol et.
💡 W3Schools'un SQL alıştırmalarını çöz. Her komutu 5 farklı örnekle dene.
Önerilen Ürün
SQL Practice Problems (kitap)
Bu neden işe yarar: Bu kitapla 50'den fazla gerçek hayat sorusu çözerek SQL pratiği yapabilirsin.
Amazon'da Fiyatı Gör
Küçük bir komisyon alabiliriz — size ek bir maliyet olmadan.
3
İlişkisel veritabanı tasarımını bir projeyle öğren
🟡 Medium ⏱ 3 saat

Basit bir kütüphane yönetim sistemi için tablolar tasarla ve ilişkileri kur.

  1. 1
    İhtiyaçları belirle — Kitaplar, üyeler, ödünç kayıtları olsun. Her kitabın bir türü olsun (roman, bilim).
  2. 2
    Tabloları oluştur — CREATE TABLE turler (id SERIAL PRIMARY KEY, ad VARCHAR(50)); CREATE TABLE uyeler (id SERIAL PRIMARY KEY, ad VARCHAR(50), email VARCHAR(100));
  3. 3
    Foreign key ekle — Kitaplar tablosuna tur_id ekle: ALTER TABLE kitaplar ADD COLUMN tur_id INT REFERENCES turler(id);
  4. 4
    Ödünç tablosunu oluştur ve ilişkilendir — CREATE TABLE odunc (kitap_id INT REFERENCES kitaplar(id), uye_id INT REFERENCES uyeler(id), odunc_tarihi DATE);
  5. 5
    Örnek verilerle test et — Birkaç kitap, üye ekle. Bir kitabı bir üyeye ödünç ver: INSERT INTO odunc VALUES (1, 1, '2024-01-01');
💡 Normalizasyon kurallarını ara ama ilk projende aşırıya kaçma. 3. normal form yeterli.
Önerilen Ürün
Database Design for Mere Mortals (kitap)
Bu neden işe yarar: Veritabanı tasarımını anlaşılır örneklerle anlatan en iyi kitaplardan biri.
Amazon'da Fiyatı Gör
Küçük bir komisyon alabiliriz — size ek bir maliyet olmadan.
4
JOIN'leri gerçek verilerle kavra
🟡 Medium ⏱ 2 saat

INNER JOIN, LEFT JOIN gibi birleştirme işlemlerini örnek veritabanı üzerinde çalış.

  1. 1
    Örnek bir veritabanı indir — PostgreSQL için 'dvdrental' örnek veritabanını indir ve kur. Bu, film kiralama şirketi verilerini içerir.
  2. 2
    INNER JOIN ile iki tabloyu birleştir — SELECT film.title, category.name FROM film INNER JOIN film_category ON film.film_id = film_category.film_id INNER JOIN category ON film_category.category_id = category.category_id;
  3. 3
    LEFT JOIN ile eksik verileri bul — SELECT customer.first_name, rental.rental_date FROM customer LEFT JOIN rental ON customer.customer_id = rental.customer_id; Müşterilerin kiralama yapıp yapmadığını gör.
  4. 4
    GROUP BY ile grupla ve聚合函数 kullan — SELECT customer.first_name, COUNT(rental.rental_id) FROM customer LEFT JOIN rental ON customer.customer_id = rental.customer_id GROUP BY customer.first_name;
💡 JOIN'leri görselleştirmek için Venn şeması çiz. SQL'de JOIN'leri anlamak için 'SQL Joins Explained' videosunu izle.
Önerilen Ürün
SQL Koans (ücretsiz interaktif eğitim)
Bu neden işe yarar: JOIN'leri ve diğer SQL konularını uygulamalı olarak öğreten bir araç.
Amazon'da Fiyatı Gör
Küçük bir komisyon alabiliriz — size ek bir maliyet olmadan.
5
Kendi projeni yap ve GitHub'a koy
🔴 Advanced ⏱ 5 saat

Basit bir blog veritabanı tasarla, sorgular yaz ve projeyi GitHub'da paylaş.

  1. 1
    Blog veritabanını tasarla — Kullanıcılar, yazılar, yorumlar tabloları olsun. Kullanıcılar: id, username, email. Yazılar: id, title, content, user_id, created_at. Yorumlar: id, post_id, user_id, comment.
  2. 2
    Tabloları oluştur ve veri ekle — Her tabloya 5-10 kayıt ekle. En az bir kullanıcı, onun 2 yazısı ve her yazıya bir yorum olsun.
  3. 3
    Karmaşık sorgular yaz — Her kullanıcının yazı sayısını bul: SELECT username, COUNT(post_id) FROM users LEFT JOIN posts ON users.id = posts.user_id GROUP BY username; En çok yorum alan yazıyı bul.
  4. 4
    Projeyi GitHub'a yükle — SQL dosyalarını bir repo'ya koy. README'ye veritabanı şemasını ve örnek sorguları ekle. İş ilanlarında göstermek için harika.
💡 Projeni 'veritabani-ogrenme-projesi' gibi bir isimle GitHub'da paylaş. İş görüşmelerinde referans göster.
Önerilen Ürün
GitHub Pro hesabı (ücretsiz)
Bu neden işe yarar: Projelerini sergilemek ve geri bildirim almak için en iyi platform.
Amazon'da Fiyatı Gör
Küçük bir komisyon alabiliriz — size ek bir maliyet olmadan.
⚠️ Ne Zaman Profesyonel Yardım Alınmalı

Eğer SQL sorgularını 2 hafta boyunca her gün denemenize rağmen JOIN'leri anlamakta zorlanıyorsanız, bir mentor veya online kurs (örneğin Udemy'de 'SQL for Beginners') almayı düşünün. Ayrıca veritabanı tasarımında sürekli aynı hataları yapıyorsanız (örneğin gereksiz tekrarlar), bir veritabanı uzmanından yardım istemek faydalı olabilir.

Veritabanı öğrenmek bir gecede olacak iş değil. Ben ilk başta SELECT sorgusu yazarken bile takılıyordum, şimdi ise karmaşık sorgular yazabiliyorum. Önemli olan her gün en az 15 dakika pratik yapmak. Başlangıçta hata yapmak normal, hatta gerekli. Çünkü her hata yeni bir şey öğretir.

Unutmayın, veritabanı öğrenmek sadece SQL öğrenmek değil, aynı zamanda veriyi anlamak ve organize etmektir. Bu beceri, yazılım geliştirmeden veri analizine kadar birçok alanda işinize yarayacak. Şimdi PostgreSQL'i kurun ve ilk tablonuzu oluşturun. Gerisi gelecek.

❓ Sık Sorulan Sorular

SQL ile başlayın. SQL tüm veritabanlarının ortak dilidir. PostgreSQL veya MySQL öğrenmeniz yeterli.
Temel SQL komutlarını 1 haftada öğrenebilirsiniz. İleri seviye konular (performans, indeksleme) için 2-3 ay düzenli çalışma gerekebilir.
PostgreSQL öneririm. Ücretsiz, güçlü ve iş piyasasında yaygın. MySQL de iyi bir alternatif.
W3Schools SQL Tutorial ve SQLZoo interaktif alıştırmalar için harika. Ayrıca Udemy'de 'SQL for Beginners' kursunu öneririm.
Kesinlikle. Kendi kütüphane veya blog veritabanınızı tasarlayın. Proje yapmadan öğrenilen bilgiler kalıcı olmaz.