SQL/Giriş

Vikikitap, özgür kütüphane
< SQL

SQL(Yapısal Sorgulama Dili), ilişkisel veritabanlarında veri oluşturmak, silmek, değiştirmek ve almak için geliştirilmiş olan bir dildir.

SQL bildirimsel bir programlama dilidir, yani SQL'de sadece ne yapılması istendiğini ifade ederiz, nasıl yapılacağını ifade etmeyiz. Bu yönüyle bazen prosedürel olmayan diller sınıfına da dahil edilir. Biz sadece şu tablodan şu ve şu bilgileri oku deriz, bunun nasıl yapılacağını kodla belirtmeyiz.

SQL komutları ve ifadeleri genelde aşağıdaki gibi gruplandırılmaktadır:

Data Query Language (DQL)- Veri sorgulama dili
  • SELECT - bir veya daha fazla tablodan belli kayıtları okumak için kullanılır.
Örnek:
SELECT * FROM ogrenciler_tablosu WHERE yas > 10;
yaşı 10 dan büyük olan öğrencileri seçer.
Data Manipulation Language (DML)- Veri İşleme Dili
  • INSERT - Kayıt oluşturmak için kullanılır.
Örnek:
INSERT INTO ogrenciler_tablosu (ad,soyad) VALUES ('Ali','Doğan') ;
ogrenciler_tablosuna adı Ali soyadı Doğan olan öğrenci ekler.
  • UPDATE - Belli kayıtları güncellemek için kullanılır.
Örnek:
UPDATE ogrenciler_tablosu SET sinif= '4D' WHERE (yas=10) ;
ogrenciler_tablosuda 10 yaşında olan öğrencileri sınıfını 4D olarak değiştirir.
  • DELETE - Belli kayıtları silmek için kullanılır.
Örnek:
DELETE FROM ogrenciler_tablosu WHERE (ad= 'Ali') ;
ogrenciler_tablosuda adı Ali olan öğrencileri siler.
Data Definition Language (DDL) - Veri Tanımlama Dili
  • CREATE - Yeni bir veri tabanı, tablo, görünüm veya başka bir veri tabanı nesnesi oluşturmak için kullanılır.
  • ALTER - Mevcut veri tabanı nesnelerinden örneğin bir tabloyu yapısal olarak değiştirmek için kullanılır.
  • DROP - Mevcut veri tabanı nesnelerinden (tablo, görünüm vs.) birini silmek için kullanılır.
Data Control Language (DCL)- Veri Kontrol Dili
  • GRANT - Kullanıcılardan birisine yetki/ayrıcalık vermek için kullanılır.
  • REVOKE - Kullanıcıların yetki ve ayrıcalıklarını geri almak için kullanılır.

SELECT, INSERT, UPDATE, DELETE gibi temel bazı komutların yanı sıra kullanılan veri tabanına göre kullanımı ya da parametreleri de değişen farklı ek komutlar da vardır, EXECUTE, TRUNCATE vb ...