SQLite Nedir ve Neden Kullanılır?
Peki, SQLite'ın en büyük avantajı nedir? Cevap basit: Kolay kullanım ve taşınabilirlik. Veritabanı dosyasını bir yerden başka bir yere kolayca taşıyabilir, hatta uygulamanın içinde dahi kullanabilirsin. Bunun yanı sıra, SQL sorguları kullanarak verilerinle kolayca etkileşimde bulunabilirsin.
SQLite Kullanarak İlk Adımı Atıyoruz!
1. SQLite Veritabanı Oluşturma
SQLite ile bir veritabanı oluşturmak, neredeyse bir dosya oluşturmak kadar kolay. Bunun için bir veritabanı dosyasına ihtiyacımız olacak. Veritabanı dosyasını açtığında, SQLite otomatik olarak bu dosyada tüm verileri saklar.
SQLite veritabanı oluşturmak için aşağıdaki Python kodunu kullanabilirsin:
import sqlite3
# Veritabanı dosyasını oluşturuyoruz
conn = sqlite3.connect('veritabani.db')
print("Veritabanı başarıyla oluşturuldu!")
Burada, `sqlite3.connect()` fonksiyonu sayesinde `veritabani.db` adında bir veritabanı dosyası oluşturuyoruz. Eğer bu dosya zaten varsa, var olan dosya kullanılacaktır.
2. Tablo Oluşturma
Veritabanı dosyasını oluşturduğumuza göre, şimdi bir tablo eklemenin zamanı geldi. Tablo, verileri düzenli bir şekilde saklayabilmek için kullanılır. Örneğin, kullanıcı bilgilerini saklayacağımız bir tablo oluşturalım.
# Tabloyu oluşturuyoruz
cursor = conn.cursor()
# Kullanıcılar tablosunu oluşturma sorgusu
cursor.execute('''CREATE TABLE IF NOT EXISTS kullanicilar
(id INTEGER PRIMARY KEY, isim TEXT, yas INTEGER)''')
# Değişiklikleri kaydediyoruz
conn.commit()
print("Tablo başarıyla oluşturuldu!")
Bu kodda, `kullanicilar` adında bir tablo oluşturduk ve bu tablonun içerisinde üç sütun bulunuyor: `id`, `isim`, ve `yas`. `id` sütunu, her kullanıcıya benzersiz bir kimlik numarası verir.
3. Veri Ekleme
Tablomuzu oluşturduğumuza göre, şimdi içine bazı veriler ekleyebiliriz. Birkaç kullanıcı verisi girelim.
# Veri ekliyoruz
cursor.execute("INSERT INTO kullanicilar (isim, yas) VALUES ('Ali', 25)")
cursor.execute("INSERT INTO kullanicilar (isim, yas) VALUES ('Ayşe', 30)")
cursor.execute("INSERT INTO kullanicilar (isim, yas) VALUES ('Ahmet', 22)")
# Değişiklikleri kaydediyoruz
conn.commit()
print("Veriler başarıyla eklendi!")
Bu kodla, üç kullanıcıyı veritabanına ekledik. Artık bu veriler `kullanicilar` tablosunda yer alıyor.
4. Veri Sorgulama (SELECT)
Veritabanına veri ekledik, şimdi de verileri sorgulamak istiyoruz. Kullanıcıların listesini almak için bir SELECT sorgusu yapalım.
# Veri sorgulama
cursor.execute("SELECT * FROM kullanicilar")
# Sonuçları alıyoruz ve yazdırıyoruz
kullanicilar = cursor.fetchall()
for kullanici in kullanicilar:
print(kullanici)
Bu kod, `kullanicilar` tablosundaki tüm verileri alır ve her kullanıcıyı ekrana yazdırır. Gördüğün gibi, verileri almak da oldukça basit!
5. Veri Güncelleme (UPDATE)
Veri güncelleme işlemi de SQL sorguları ile yapılabilir. Diyelim ki bir kullanıcının yaşını güncellemek istiyoruz. İşte örnek bir UPDATE sorgusu:
# Veri güncelleme
cursor.execute("UPDATE kullanicilar SET yas = 26 WHERE isim = 'Ali'")
# Değişiklikleri kaydediyoruz
conn.commit()
print("Veri başarıyla güncellendi!")
Bu sorgu, "Ali" isimli kullanıcının yaşını 25'ten 26'ya günceller.
6. Veri Silme (DELETE)
Veritabanındaki veriyi silmek için DELETE sorgusunu kullanabiliriz. Örneğin, bir kullanıcının kaydını silmek için şu sorguyu yazabiliriz:
# Veri silme
cursor.execute("DELETE FROM kullanicilar WHERE isim = 'Ahmet'")
# Değişiklikleri kaydediyoruz
conn.commit()
print("Veri başarıyla silindi!")
Bu sorgu, "Ahmet" isimli kullanıcının verisini veritabanından siler.
SQLite ile Veritabanı Yönetimi Nasıl Yapılır?
SQLite, küçük ve orta ölçekli projeler için mükemmel bir seçenek olsa da, büyük ölçekli uygulamalarda MySQL veya PostgreSQL gibi sunucu tabanlı veritabanları tercih edilebilir.
Sonuç Olarak...
SQLite ile ilgili daha fazla bilgi edinmek ve daha gelişmiş işlemleri öğrenmek için çeşitli dökümantasyonlara göz atabilir, pratik yaparak tecrübe kazanabilirsin. Şimdi sırada, öğrendiklerini projelerinde uygulamak var!