Örnekleriyle temel SQL veritabanı komutları

Temel SQL veritabanı komutları Insert, Update, Delete ve Select komutlarıdır. İsimlerinden de anlaşılacağı üzere Insert kayıt eklemek, Update mevcut kaydı güncellemek, Delete mevcut kaydı silmek ve Select ise belirlenen kayıtları seçmek için kullanılır. Şimdi sırayla bu komutları örnekleriyle birlikte görmek için örnek bir veritabanı ve tablo oluşturalım.

Veritabanı oluştururken yapacağımız şey temelde oluşturulacak veritabanına bir isim vermektir. Ancak bunu yaparken uymamız gereken bazı kurallar vardır. Ve bunlar da özetle aşağıdaki gibidir.

1- Veritabanı isminde rakam kullanılabilir ama rakamla başlayamaz,

2-Boşluk içermez,

3-Türkçe karakter içermez,

4-Ayrılmış isim içermez.

Aşağıdaki örnekte cihaz isimli bir veritabanı oluşturulmuştur.

[pastacode lang=”sql” manual=”CREATE%20DATABASE%20cihaz” message=”” highlight=”” provider=”manual”/]

SQL Server’da da yazılan sorguyu çalıştırmak için F5 kullanılır. Sorgu başarılı şekilde SQL Server’da çalıştığında aşağıdaki komut çıktısı görüntülenir. Aynı zamanda SQL Server Management Studio’da “Execute” butonu ile de sorgu çalıştırılabilir.

[pastacode lang=”sql” manual=”Query%20executed%20successfully.” message=”” highlight=”” provider=”manual”/]

Yukarıda sıraladığımız dört madde tablo oluştururken de uymamız gereken kuralları içerir.

Aşağıdaki örnekte ise yine cihaz isimli bir tablo oluşturulmuştur.

[pastacode lang=”sql” manual=”CREATE%20TABLE%20cihaz%0A(%0Acihaz_id%20int%2C%0Acihaz_adi%20varchar(20)%2C%0Acihaz_turu%20varchar(20)%2C%0Acihaz_marka%20varchar(20)%2C%0Acihaz_model%20varchar(20)%2C%0A)%3B” message=”” highlight=”” provider=”manual”/]

Yazının devamı için verilen örnekler de aşağıki örnek tablo oluşturulmuştur.  Eğer sorgularınız sırasında hata alırsanız hata çıktısı ile birlikte örnekteki gibi kolonların tanımlanmış olmasına dikkat etmelisiniz. Dikkat etmemiz gereken bir başka şey ise veri türlerinin uygun şekilde tanımlanmış olmasıdır. Örneğin cihaz_id numerik bir değer içeriyor olacağından varchar ya da text yerine integer veri tipi ile tanımlanmalıdır. Kolonlara atanacak veri türleri ile ilgili daha detaylı bilgiye buradaki linkten erişebilirsiniz.

INSERT – Kayıt ekleme

Veri tüm kolonlara eklenecekse;

[pastacode lang=”sql” manual=”Insert%20into%20cihaz%20values(1%2C’Notebook’%2C’Bilgisayar’%2C’HP’%2C’Pavilion’)” message=”” highlight=”” provider=”manual”/]

Eğer kayıt sadece belli kolonlara eklenecekse ise aşağıdaki gibidir.

[pastacode lang=”sql” manual=”Insert%20into%20cihaz%20(cihaz_id%2Ccihaz_adi%2Ccihaz_turu%2Ccihaz_marka%2Ccihaz_model)%20values%20(2%2C’Notebook’%2C’Bilgisayar’%2C’Dell’%2C’Inspiron’)” message=”” highlight=”” provider=”manual”/]

Eğer çok sayıda kayıt eklenecekse aşağıdaki komut kullanılabilir. Bu sayede her kayıt için ayrı ayrı insert into komutu kullanılmamış olur.

[pastacode lang=”sql” manual=”Insert%20into%20cihaz%20(cihaz_id%2Ccihaz_adi%2Ccihaz_turu%2Ccihaz_marka%2Ccihaz_model)%0Aselect%209%2C’PC’%2C’Bilgisayar’%2C’HP’%2C’MT2100’%0AUnion%20All%0Aselect%2010%2C’Notebook’%2C’Bilgisayar’%2C’Lenovo’%2C’ThinkPad%20E450′” message=”” highlight=”” provider=”manual”/]

UPDATE – Kayıt güncelleme

[pastacode lang=”sql” manual=”Update%20cihaz%20set%20cihaz_adi%3D’Elma’%20where%20cihaz_id%3D’1′” message=”” highlight=”” provider=”manual”/]

DELETE – Kayıt silme

[pastacode lang=”sql” manual=”Delete%20cihaz%20where%20cihaz_id%3D’3′” message=”” highlight=”” provider=”manual”/]

SELECT – Seçme işlemleri

Tabloya ait bütün kolonları(sütun) getirmek için;

[pastacode lang=”sql” manual=”Select%20*%20from%20cihaz” message=”” highlight=”” provider=”manual”/]

Sadece belirlediğimiz kolonları getirmek içinse aşağıdaki komutu kullanırız.

[pastacode lang=”sql” manual=”Select%20*%20from%20cihaz%20where%20cihaz_marka%3D’Apple'” message=”” highlight=”” provider=”manual”/]

Ya da;

[pastacode lang=”sql” manual=”Select%20*%20from%20cihaz%20where%20cihaz_marka%3D’Apple’%20and%20cihaz_model%3D’iMac%2027′” message=”” highlight=”” provider=”manual”/]

Eğer varchar veri türüne sahip bir kolondan veri çekilecekse yazılan sorguda ilgili kolona ait veri (‘) iki tek tırnak işaretleri arasına alınmalıdır.

SELECT – Top komutu kullanımı

SQL Serverda en üstteki x sayıda kayıt aşağıdaki komutla çekilebilir.

[pastacode lang=”sql” manual=”Select%20top%203%20*%20from%20cihaz” message=”” highlight=”” provider=”manual”/]

Ya da;

[pastacode lang=”sql” manual=”Select%20top%206%20*%20from%20cihaz” message=”” highlight=”” provider=”manual”/]

SELECT – Order by komutu kullanımı

Sorgunun hangi sıralamaya göre çekileceğini belirler. Order by komutu, ASC ile kullanıldığında küçük veriden büyüğe; DESC ile kullanıldığında ise büyükten küçüğe doğru sıralama sağlar. Aşağıdaki sorgu örneğinde cihaz tablosundaki kayıtlar marka bilgisine göre küçük harften büyük harfe doğru sıralanır.

[pastacode lang=”sql” manual=”Select%20*%20from%20cihaz%20order%20by%20cihaz_marka%20ASC” message=”” highlight=”” provider=”manual”/]

Aşağıdaki sorguda ise yine marka bilgisi bu kez büyük harften küçük harfe doğru sıralanır.

[pastacode lang=”sql” manual=”Select%20*%20from%20cihaz%20order%20by%20cihaz_marka%20DESC” message=”” highlight=”” provider=”manual”/]

SELECT – Distinct komutu kullanımı

Tekrarlanan verilerin tek bir kayıt olarak çekilmesi için kullanılan komuttur. Örnek tablomuzda hangi markalara ait cihazların bulunduğunu öğrenmek istiyorsak sorgumuz aşağıdaki gibi olacaktır. Distinct komutu tek başına kullanılamaz.

[pastacode lang=”sql” manual=”Select%20Distinct%20cihaz_marka%20from%20cihaz” message=”” highlight=”” provider=”manual”/]

Örnek tablomuza göre sorgu çıktısı aşağıdaki gibi olacaktır.

 

Tags:,
2 Comments

Yorum Ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir