SQL’e Giriş
SQL Nedir? ER diyagramını çizip tablolarını çıkardığımız bir veritabanı üzerinde işlem yapmak için SQL’e ihtiyacımız var. Veritabanı Sorgulama dili(Sequential Querying Language) Tablolarda seçim,silme,güncelleştirme, kayıt ekleme ve birleştirme gibi birçok işlemin yapılmasını sağlayan sorgular hazırlanmasını sağlar.
İlk olarak tabloları oluşturmamız gerekli.. Nasıl? Create table tablo_adı (....) ile
Create table(tablo oluşturma) Sorgusu Yeni bir tablo oluşturmak için kullanılan sorgudur. Create table "tabloismi"(“ “sütun1” “veri tipi”, “sütun 2” “veri tipi”, “sütun3” “veri tipi”);
Örnek create table çalışanlar (ad varchar(15), soyad varchar(20), yaş number(3), adres varchar(30), şehir varchar(20), ülke varchar(20));
Alıştırma – SQL yazınız Yeni bir şirket için çalışanlarının listesinin tutulacağı bir tabloya ihtiyaç vardır. Tabloda ilkisim, soyisim ,unvan ,yaş ,maaş gibi alanlar yer alacaktır. Bir okul için öğrenci tablosu vardır. Öğrenci_no, adı, soyadı, doğumtarihi, tel, ortalama sütunları tutulacaktır.
Veri eklemek Tabloları oluşturduktan sonra içerisine verileri eklemek gerekir. Nasıl?? Insert into tablo_adı (sütunadları) values (değerler)
Insert into (kayıt ekleme) Sorgusu Tabloya bir kayıt eklemek için kullanılır. insert into "tablename" (ilk_kolon,...son_kolon) values (ilk_değer,...son_değer); Örnek: insert into çalışanlar (ad, soyadı, yaş, adres, şehir, ülke) values (‘Ali', ‘Demiroğlu', 45, ‘Deniz cad. No:20', ‘İstanbul', ‘Türkiye');
Alıştırma Şirket çalışanlarının içine Kemal Soylu, 45 yaşında, genel müdür, maaşı 1 ytl ekleyiniz. Öğrenci tablosuna kendinizi ekleyiniz.
Tablonun içine verileri ekledikten sonra o verileri arayıp bulup kullanmamız gerekir. Nasıl? Select from tabloadı ....
Select (seçim) İşlemi select “sütun1" [,”sütun2",vs..] from “tabloismi" [where “şart"]; [] = seçmeli Basit Select sorgusu , herhangi bir tablodan istenilen sütunların ,istenilen belli şartlara bağlı olarak getirilmesini sağlar.
Örnek Sorgular Çalışanların bütün özellklerini listeleyin select * from çalışanlar; Soyismi s ile biten çalışanların isim ve soyisimlerini listeleyin select ad, soyad from çalışanlar where soyad LIKE '%s'; Soyisminde illia geçen çalışanların isim soyisim ve yaşlarını listeleyin select ad, soyad, yaş from çalışanlar where soyad LIKE '%illia%'; İlk ismi Ali olan çalışanların bütün özelliklerini listeleyin. select * from çalışanlar where ad = ‘Ali';
Alıştırmalar Bütün çalışanların isim ve yaşlarını listeleyin Şehri Ankara olmayan bütün çalışanların ilkisim ,soyisim ve şehirlerini listeleyin 40 yaşın üstünde olan herkesin bütün özelliklerini listeleyin. Soyismi ay ile bitenlerin ilkisim ve soyisimlerini listeleyin İlk ismi Veli olanların bütün özelliklerini listeleyin. İlk ismi Ayşe içeren bütün çalışanların özelliklerini listeleyin
Alıştırmalar Aşağıdaki kayıtları bir önceki alıştırmada oluşturulan tabloya girin. Jonie Weber, Secretary, 28, 19500.00 Potsy Weber, Programmer, 32, 45300.00 Dirk Smith, Programmer II, 45, 75020.00 Aşağıdaki sorguları hazırlayın Tablodaki bütün sütunları listeleyin Maaşı 30000 in üzerinde olan çalışanları listeleyin Yaşı 30’un altında olan çalışanların isim ve soyisimlerini listeleyin. Ünvanı Programmer olan çalışanların isim ,soyisim ve maaşlarını listeleyin Soyismi “ebe” içeren çalışanları listeleyin. İsmi Potsy olan çalışanları listeleyin Soyismi “ith” ile bitenleri listeleyin
Drop table(tablo silme)Sorgusu Tablo artık işe yaramıyorsa içindeki kayıtlarla birlikte silmemiz gerekir. Tabloyu içindeki kayıtlarla birlikte siler. drop table tabloisim Örnek: drop table çalışanlar
Delete From(Silme) Sorgusu Tabloyu değil sadece içindeki istediğimiz kayıtları siler. Tablodan belli şartlara bağlı olarak kayıtların silinmesini sağlar. Örnek: delete from çalışanlar where soyadı = 'May'; delete from çalışanlar where ad = ‘Ali' or ad = ‘Ayşe';
Bir marketin veritabanında ürünler tablosu oluşturun. Ürünlerin id’si, adı, adedi ve fiyatı var. Aşadaki ürünleri tablonuza ekleyin Id Ad Adet Fiyat 1 Dolma kalem 550 5 2 Kurşun kalem 320 3 Silgi 200 52 Çanta 102 20
Ürünlerden fiyatı 2 ytl üzerinde olanların tüm özelliklerini sıralayınız. Ürünlerden fiyatı 2 ytl üzerinde olanların adlarını sıralayınız. Ürün ad m ile bitenleri sıralayınız Ürün adının içinde m harfi geçenleri sıralayınız. Adı v harfi ile başlayan ürünü siliniz Tüm tabloyu siliniz.