UPDATE etiketine sahip kayıtlar gösteriliyor.
UPDATE etiketine sahip kayıtlar gösteriliyor.

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'

WHERE Komutunun Kullanımı

WHERE :  Görüntülemek istediğimiz verileri belirli bir kritere göre seçebilmemizi sağlar. Bir koşulu belirterek sadece o koşula uyan kayıtların seçilmesini sağlar. WHERE kullanımı zorunlu olmamakla birlikte koşullu veri seçmek istediğimizde FROM ifadesinden sonra eklenir.

WHERE ile birlikte kullanılan Operatörler




 
Kullanımı :  
SELECT <sütun adı>
FROM <tablo adı>
WHERE <koşullar>





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

Örnek Sorgu 1 : SELECT * FROM Orders WHERE ShipName ='Island Trading'
('Orders' tablosundaki ShipName değeri 'Island Trading' olan bütün veriler)


Örnek Sorgu 2 : SELECT ProductName, UnitPrice FROM Products WHERE UnitPrice >= 40
('Products' tablosundaki fiyatı 40 liradan büyük ve eşit olan veriler)


Örnek Sorgu 3 : SELECT ProductName, UnitPrice FROM Products WHERE UnitPrice BETWEEN 17 and 20
('Products' tablosundaki fiyatı 17 ve 20 arasında değişen veriler)

SELECT Komutunun Kullanımı

SELECT :  En sık kullanılan komutlardan birisidir. Veri tabanından bir alan seçmemizi sağlar. Seçilen alanı bir sonuç tablosunda saklar. Genellikle bir ya da daha çok tablonun bütün alanları ya da belli alanları için SELECT komutu yazılır. 

Kullanımı :  SELECT <sütun adı> FROM <tablo adı>

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

SELECT ile Tablodaki Bütün Sütunları Seçmek
Bir tablodaki tüm alanları görüntülemek için tek tek bütün sütun adlarını belirtmekten daha kolay bir yöntem vardır. SELECT ifadesinden sonra "*" işaretini yazdığınızda SQL bunu ‘tablodaki tüm sütunlar’ olarak yorumlayacaktır. 

SQL Server'ımızda 'New Query' (Yeni Sorgu) diyerek boş bir sorgu sayfası açalım.

Sorgumuz: SELECT * FROM Region 
('Region' tablosundaki bütün verileri göster diyoruz.Sonuçları Results Tablosunda görebiliriz.)  


SELECT ile Tablodaki Belirli Sütunların Görüntülenmesi   
Sorgulamalarımızda çoğu zaman bir tablodaki tüm veriler yerine sadece bir kısmına ihtiyaç duyarız. Bu durumlarda sorgulamada "*"  işareti ihtiyacımızı karşılamayacaktır. Bu nedenle "*" işareti yerine ihtiyacımız olan sütun isimlerini SELECT ifadesinin ardından yazarak gerekli verilerin görüntülenmesini sağlayabiliriz. 

Sorgumuz: SELECT RegionDescription FROM Region
('Region' tablomuzdaki 'RegionDescription' sütununu seçip görüntülenmesini sağlıyoruz.











SQL DML, DDL ve DCL Komutları

SQL DML (Data Manipulation Language) Veri İşleme Dili 

Veri girmek, değiştirmek, silmek ve verileri almak için kullanılan DML komutlarının tümü olarak tanımlanır. Kısaca veritabanında bilgi üzerinde çalışmayı sağlar. Bilgiyi çağırma, bilgiye yeni bir şeyler ekleme, bilgiden bir şeyler silme, bilgiyi güncelleştirme işlemlerini yapar. 

Temel dört komutu vardır:
  • SELECT : Veritabanındaki nesneden alan çağırmayı ve gereken bilgiyi görebilmeyi sağlar.
  • UPDATE : Nesnede bilgi güncellemeyi sağlar.
  • INSERT : Nesneye alan eklemeyi sağlar.
  • DELETE : Nesneden alan silmeyi sağlar.
SQL DDL (Data Definition Language) Veri Tanımlama Dili

Verilerin tutulduğu nesneler olan tabloların yaratılmasını, silinmesini ve bazı temel özelliklerinin düzenlenmesini sağlar. 

En yaygın kullanılan DDL komutları şunlardır: 
  • CREATE TABLE : Veritabanı üzerinde bir tablo yaratmak için kullanılır.
  • ALTER TABLE : Tabloda değişiklik yapmak, yeni bir sütun eklemek, sütunun tipini veya uzunluğunu değiştirmek gibi yapısal değişiklikler yapılması için kullanılır.
  • DROP TABLE :  Tabloyu fiziksel olarak siler. (verilerle birlikte)
  • TRUNCATE TABLE : Tablodaki verileri siler fakat tablo yapısı kalır.
  • CREATE INDEX : Index oluşturmak için, tablonun sütun adı üzerinde indeks oluşturur.
  • CREATE VIEW : Görüntü oluşturmak için kullanılır.
  • DROP VIEW : Görüntüyü siler.

SQL DCL (Data Control Language) Veri Kontrol Dili 

Veri Kontrol Dili bir veritabanı kullanıcısı veya rolü ile ilgili izinlerin düzenlenmesini sağlar. DCL komutlarını kullanabilmek için SQL Server'da varsayılan değer (default) olarak yetki sahibi olan gruplar: sysadmin , dbcreator , db_owner , db_securityadmin 'dir. Sunucuya dışarıdan bir erişim sağlamak için bir giriş (login) oluşturulmalıdır.

Temel DCL komutları şunlardır:
  • GRANT  : Veritabanı kullanıcısına, veri tabanı rolüne veya uygulama rolüne izinler vermek için kullanılan komuttur.
  • DENY : Kullanıcıların haklarını kısıtlayan komuttur.
  • REVOKE : Daha önce yapılan tüm kısıtlama ve izinleri iptal eden komuttur. Bir nesneyi oluşturan kullanıcının REVOKE ile nesne üzerindeki yetkilendirme ve kullanma hakkı yok edilemez. REVOKE komutunu, sys_admin rolüne veya db_owner, db_securityadmin sabit veri tabanı rollerine sahip kullanıcılar ve nesne için dbo olan kullanıcı çalıştırabilir.