MICROSOFT SQL SERVER

Ders Notları

 

Update ve Delete Komutlarının Kullanımı

 

Update:Verilerimizi güncellemek için kullanılır.Verdiğimiz şarta uyan kaydı günceller.Şart belirtmezsek bütün kayıtları değiştirir.

Kullanım Şekli: Update Tablo_Adi set alanadi=deger Where şart

Bu dersimizde kullanacağımız veritabanımız:
update ve delete
*veritabanı dosyasını indirmek için burayı tıklayınız.
*indirdiğiniz bu dosyayını içeriğini winrarla dışarı çıkartın.Daha sonra sql server'de object explorer panelinde database üzerinde sağ tıklayın ve attach komutu ile veritabanı dosyasını ekleyiniz.

 

update personel set per_maas=per_maas+100

sonuç

Personelin maaşına 100tl zam yapıldı.Burada şart belirtmediğimiz için tüm tüm per_maas bilgisi güncellenmiş oldu.

Eğer sadece bilisim bölümünde çalışan elemanlara 100 tl zam yapmak isteseydik where ile şartımızı yazmalıydık.

 

update personel set per_maas=per_maas+100 where per_bolum='bilişim'

 

sonuç

 

Bilişim bölümünde çalışan personelimize 100Tl zam yapmış olduk.

Fatih tolu adlı personelin bölümü mobilya iken bilişim bölümüne geçiş yaptı. Bu güncellemeyi yapalım:

 

update personel set per_bolum='bilişim' where per_ad=fatih and per_soyad='tolu' and per_bolum='mobilya'


sonuç

güncelleme yapılmış oldu.

 

Bu veritabanında ortalama maaş,en yüksek maaş, en düşük maaş ve toplam ödenen maaşı gösteren sql sorgusunu hazırlayalım:

Ortalama hesabı için avg,en büyüğü bulmak için max,en düşüğü min ve toplam için sum fonksiyonlarını kullanmaktayız.

Sorgumuz;

select AVG(per_maas) as ortalama,
MAX(per_maas) as maksimum ,
MIN(per_maas) as minumun,
SUM(per_maas)as toplam
from personel

ekran çıktısı:

sonuç

 

Maaşı 2500'ün üstü olan ve bilişim bölümünde çalışan personelleri listeleyelim:bilişim bölümünü listelerken yanlış yazımlar (bilişim yerine bilisim )olabilir.bunu da dikkate alarak sorguyu hazırlayalım.

select per_ad,per_soyad from personel
where per_maas>2500 and per_bolum like 'bili%'

sonuç

 

Hakan kutlu ve hasan kulu isimlerinde bir kayıt ekleyelim:

insert into personel (per_id,per_ad,per_soyad)
values(23,'hakan','kutlu')
insert into personel (per_id,per_ad,per_soyad)
values(24,'hasan','kulu')

işe giriş tarihi olmayan personelin işe giriş tarihlerini 23.03.2012 olarak ayarlayalım:

update personel set per_ise_gir_tar='2012.03.23'
where per_ise_gir_tar is null

Yukarıda girdiğimiz iki kayıtın işe giriş tarihi olmadığı için bu kayıtların işe giriş tarihini güncellemiş olduk.

maaşı ortalama maaştan yüksek olan personeli listeleyin:

select * from personel where
per_maas> (select AVG(per_maas) from personel)

sonuç:
sonuç

 

Delete:Tablodan kayıt silmek için kullanılır.Şart belirtmezsek tüm kayıtlarımız silinir.

Kullanım Şekli : :Delete from Tablo_Adi Where şart

Veli yılmaz isimli personelimizi listeden kaldıralım:

delete from personel where per_ad='veli' and per_soyad='yılmaz'

işe giriş tarihi 2000den önce olan personelleri silelim:

önce kayıt varmı bakalım:

select * from personel where per_ise_gir_tar<'01.01.2000';

hasan maya ve deniz yılmaz isimli personeller 2000 yılından önce giriş yapmışlar.Şimdide silelim..

 

delete from personel where per_ise_gir_tar<'01.01.2000';

 

tüm tabloyu silelim:

 

delete from personel

tablomuzdaki tüm bilgiler silinmiş oldu.

 

 

ÖNCEKİ KONU   SONRAKİ KONU

 

Web hosting by Somee.com