23 Ağustos 2014 Cumartesi

SQL'de DELETE Kullanımı

  • DELETE ifadesi tablodaki satırları silmek için kullanılır.
  • DELETE ifadesi içerisinde WHERE isteğe bağlıdır
  • Koşul belirtilmez ise bütün kayıtları tablomuzdan siler.
  • DELETE ifadesi ile kayıtlar silinse dahi tablo  ve sütünların tanımı  veritabanında saklanır.
  • Potansiyel riskler nedeniyle DELETE ifadesi kullanılırken her zaman bir arama koşulu tanımlanmalıdır.
DELETE Kullanımı: DELETE FROM <tablo adı> WHERE <sütun adı>=<aranan değer>

NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 

Örnek Sorgu : Employees (Çalışanlar) tablumuzda EmployeeID'si 5 olan kaydı silelim.

DELETE FROM Employees WHERE EmployeeID=5 SELECT * FROM Employees

SQL'de UPDATE Kullanımı

  • UPDATE ifadesi tek bir tablonun seçili satırlarını yada daha fazla sütundaki değerleri günceller.
  • Güncellenecek hedef tablo, ifadede adlandırılır ve tabloyu güncellenecek olan ayrı sütunların herbirini değiştirmek için gerekli izne sahip olunması gereklidir.
  • Kullanılacak WHERE ifadesi tablonun güncellenecek olan satırlarını belirler.
  • SET  cümleciği ise hangi sütunların güncelleneceğini belirler ve bunların güncel değerini hesaplar.
UPDATE Kullanımı: UPDATE <tablo adı> SET <sütun adı> = <yeni değer> WHERE <sütun adı> = <eski değer> 

NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 

Örnek Sorgu : Müşteri kodu (CustomerID) "BERGS" olan kayıtların Görüşülecek Kişi (ContactName) ve City alanlarını güncelleyelim. Koşul kısmında belirttiğimiz alan Birincil Alan olduğundan sadece tekbir satır güncellenecektir. Sorgunun sonucunu basit bir SELECT sorgusu ile kontrol edebilirsiniz.

UPDATE Customers SET ContactName='Bayraktar',City='Berlin' WHERE CustomerID='BERGS'

SQL'de INSERT INTO...VALUES Kullanımı

  • INSERT kullanımından farklı olarak istenilen sütunlara kayıt işlemi yapmamızı sağlar.
  • 2 farklı kullanım şekli vardır.
INSERT INTO...VALUES Kullanımı 1 : INSERT INTO tablo_adı VALUES (değer1, değer2,....)
INSERT INTO...VALUES Kullanımı 2 : INSERT INTO tablo_adı (sütun1, sütun2,...) VALUES (değer1, değer2,....)
 
NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 
 
Örnek Sorgu : Customers tablosuna sadece müşteri kodu (CustomerID) ve Firma adı (CompanyName) verilerinin girildiği bir kayıt ekleyelim.
 

22 Ağustos 2014 Cuma

SQL'de INSERT...SELECT Kullanımı

  • Sorgu sonucunu bir tabloya eklemek istediğimizde  INSERT...SELECT ifadesini kullanırız.
  • Verilerin yazılacağı tablo alanlarının boş (NULL) değere izin verip vermediğine veya alanın varsayılan (default) bir değeri olup olmadığına dikkat edilmelidir. 
  • Tablo alanlarında boş (NULL) değere izin verilmiyorsa, bu alanlar için mutlaka bir değer belirtilmelidir.
NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 

Örnek Sorgu : Sorgumuzda Çalışanlar (Employees) tablosundaki verileri Müşteriler (Customers) tablosuna ekleyelim. Sorgu içerisinde substring() fonksiyonu ile FirstName ve LastName alanlarından sırasıyla 3 ve 2'şer harf alarak yeni bir alan oluşturalım. Bu alan verinin ekleneceği Müşteriler (Customers) tablosunun birincil alanı CustomerID’ ye yazılacaktır.


Sorgu sonucunda 92 adet olan Customers sayısı 101 olacaktır.


SQL'de INSERT ve VALUES Birlikte Kullanımı

  • INSERT ifadesini VALUES ile birlikte kullanarak tablolara yeni satırlar eklenebilir.
  • Eklenecek olan verilerde veri türü ve sutun sırası tablonunkilerle uyuşmalıdır.
NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 
 
Örnek Sorgu :  INSERT ve VALUES ifadelerini birlikte kullanarakk "Bayraktar Tea Company" isimli firmayı Müşteriler (Customers) tablosuna ekleyelim.

INSERT customers(CustomerID,companyname,contactname,contacttitle,
Address,city,region,postalcode,country,phone,fax) VALUES ('BYRK','Bayraktar Tea Company','Ibrahim Bayraktar','Owner','Cumhuriyet Street','Yozgat','TR','66100','Turkei','(354) 000-0000','(354) 000-0000')


Copyright 2013-2017 | İbrahim BAYRAKTAR /dev/null Web Günlüğü