SQL Nedir? Veritabanlarında Ne İşe Yarar?
SQL, ilişkisel veritabanlarında kayıtları bulmak ve veriler üzerinde işlem yapmak için kullanılan bir dildir. Temel komutlarla sorgu yazabilir, veri ekleyebilir, güncelleyebilir veya silebilirsiniz.

Bu yazıda neler var?
SQL, ilişkisel veritabanlarında verileri sorgulamak ve yönetmek için kullanılan dildir. SELECT ile kayıtları listeler; INSERT, UPDATE ve DELETE ile veri ekler, günceller ve silersiniz.
SQL'in Tanımı ve Kapsamı
SQL, İngilizce Structured Query Language ifadesinin kısaltmasıdır. Türkçede yapılandırılmış sorgu dili olarak anılır. Veriler, ilişkisel veritabanlarında satır ve sütunlardan oluşan tablolarda tutulur. SQL, bu tablolarla çalışmanızı sağlar.
SQL bir veritabanı veya uygulama değildir. PostgreSQL, MySQL, Microsoft SQL Server ve SQLite gibi veritabanı yönetim sistemlerine komut vermek için kullanılır. Sistem, komutları işler ve uygun sonuçları size döndürür.
SQL Sorguları Nasıl Çalışır?
SQL sorgusunda veritabanından istediğiniz sonucu veya yapılmasını istediğiniz işlemi belirtirsiniz. Örneğin, SELECT * FROM users; sorgusu users tablosundaki tüm sütunları ve kayıtları ister. Yıldız işareti, sonuçta bütün sütunların yer almasını belirtir.
Veritabanı yönetim sistemi sorgunun yazımını ve kullanıcının erişim yetkisini denetler. Ardından sorguyu çalıştırıp sonucu döndürür veya tabloda değişiklik yapar. SQL, çoğunlukla sonuca odaklanan bildirimsel bir dildir: istediğiniz veriyi söylersiniz, sistem işlem adımlarını yönetir.
SQL ile Yapılan Temel İşlemler
SQL, veritabanında hem kayıtlar hem de tablolar üzerinde çalışır. Aşağıdaki komutlar temel veri işlemlerini kapsar. İşlem yaparken tablo ve sütun adlarını doğru yazın; koşul içeren komutlarda hangi kayıtların etkileneceğini açıkça belirtin.
- Veri sorgulama: SELECT ile kayıtları seçer, filtreler ve sıralarsınız.
- Veri ekleme: INSERT ile tabloya yeni kayıt eklersiniz.
- Veri güncelleme: UPDATE ile mevcut kayıtların alanlarını değiştirirsiniz.
- Veri silme: DELETE ile seçtiğiniz kayıtları kaldırırsınız.
- Tablo yönetimi: CREATE ile tablo oluşturabilir, ALTER ile yapısını değiştirebilirsiniz.
Örneğin, UPDATE veya DELETE sorgusunda WHERE koşulunu atlarsanız işlem tablodaki tüm kayıtları etkileyebilir. Sorguyu çalıştırmadan önce koşulu ve hedef tabloyu kontrol edin.
SQL Komut Grupları
SQL komutları, yaptıkları işe göre gruplandırılır. Bu sınıflandırma, hangi komutun veriyle; hangisinin tablo yapısı, izinler veya işlem akışıyla ilgili olduğunu anlamayı kolaylaştırır. SELECT'in sınıflandırılması kaynaklara göre farklı sunulabildiği için tabloda yaygın eğitim kullanımını esas alıyoruz.

| Grup | Kullanım | Örnek komutlar |
|---|---|---|
| DDL | Tablo ve veritabanı yapısını tanımlama | CREATE, ALTER, DROP |
| DML | Tablolardaki verileri değiştirme | INSERT, UPDATE, DELETE |
| DQL | Veri sorgulama | SELECT |
| DCL | Kullanıcı izinlerini yönetme | GRANT, REVOKE |
| TCL | İşlem akışını yönetme | COMMIT, ROLLBACK |
Bu gruplar, komutları öğrenirken kullanışlı bir çerçeve sunar. Veritabanı sistemlerinin desteklediği komutlar ve bazı sözdizimi ayrıntıları farklılaşabilir. Bir sistem için yazdığınız sorguyu başka bir sisteme taşırken kullanılan SQL lehçesini ve belgelerini inceleyin.
SQL Kimlerin İşine Yarar?
SQL; veritabanından kayıt alan yazılım geliştiriciler, rapor hazırlayan analistler ve veriyle çalışan ekipler için kullanışlıdır. Bir satış tablosundan belirli tarihler arasındaki siparişleri seçebilir, müşteri kayıtlarını güncelleyebilir veya yeni bir tablo oluşturabilirsiniz. İşlem, verilerin hangi sistemde tutulduğuna göre ilgili veritabanında yürütülür.
Veri analizi yaparken SQL ile gerekli kayıtları süzüp raporlama veya inceleme aşamasına aktarabilirsiniz. Sürecin diğer adımları için veri analizi rehberine bakabilirsiniz. SQL sorgularının sonuçları Python analiz akışlarında da kullanılabilir; ilgili yöntemler için Python'da panel veri analizi yazısını inceleyin.
SQL, Veritabanı ve Veritabanı Yönetim Sistemi Farkı
Bu kavramlar aynı şeyi anlatmaz. SQL, verilerle çalışmak için yazdığınız dildir. Veritabanı, düzenlenmiş verilerin tutulduğu yapıdır. Veritabanı yönetim sistemi ise verileri saklayan, sorguları çalıştıran ve erişimi yöneten yazılımdır.
Örneğin, bir uygulamanın kullanıcı kayıtları veritabanında tutulabilir. Uygulama, veritabanı yönetim sistemine SQL sorgusu göndererek bu kayıtları listeler. SQL bilmek, tek başına bir veritabanı yönetim sistemi kurduğunuz veya verileri sakladığınız anlamına gelmez.
Sık Yapılan SQL Hataları ve Çözümleri
Yeni başlayanlar çoğunlukla tablo adlarını, sütun adlarını veya sorgu koşullarını yanlış yazar. Hata iletisi hangi bölümün sorun çıkardığını gösterebilir. Sorguyu küçük parçalar hâlinde deneyin; önce doğru tabloyu ve sütunları seçtiğinizi doğrulayın.
- Yanlış tablo veya sütun adı: Veritabanındaki gerçek adları kontrol edin.
- WHERE koşulunu unutma: UPDATE ve DELETE sorgularında etkilenecek kayıtları koşulla sınırlayın.
- Metin değerini tırnaksız yazma: Metin değerlerini SQL sözdizimine uygun biçimde belirtin.
- Gereksiz yere tüm sütunları seçme: Rapor veya uygulamada gereken sütunları açıkça yazın.
Özellikle veri değiştiren sorguları çalıştırmadan önce hedef kayıtları SELECT ile görüntüleyin. Böylece koşulun beklediğiniz satırları seçip seçmediğini görebilirsiniz.