SQL Foreing Key Kullanımı

SQL Foreing Key Kullanımı
10 Temmuz 2015SQL

SQL sistemlerinde kullanılan en faydalı indexleme yöntemlerinden biri de Foreign key kullanımıdır. MSSQL Foreign Key Kullanımı Sayesinde bir tablomuzdaki bir sütunun tüm değerleri diğer tablodaki başka bir sütuna eşitlenerek sadece belirli değerler kullandırılabilir.


Örneğin bir ürünler tablomuz ve bir kategoriler tablomuz olduğunu düşünün. İsteğimiz ürünler tablomuza sadece kategoriler tablomuzdaki değerlerin eklenebilmesi. bunun için ürünler tablomuzdaki urun_kategori değerini kategoriler tablosundaki id primary key'ine bağlayacağız. Bunun bize iki önemli avantajı bulunmaktadır.

  1. Ürünler tablomuza kategoriler tablomuzdan gelen değerler dışında veri gelmesi engellenecektir.
  2. Kategoriler tablomuzda herhangi bir satırı silmeye çalıştığımızda bu satır ürünler tablomuzda kullanılmışsa sistem otomatik olarak işlemi durdurarak hata verecektir. Bunun için satırlarca kod yazmamıza gerek kalmaz.

Şimdi oluşturmuş olduğumuız kategoriler tablomuzu ürünler tablomuza foreign key olarak ekleyelim. 
 

ALTER TABLE urunler
ADD FOREIGN KEY (urun_kategori)
REFERENCES kategoriler(id)

Bu sorgular sayesinde urunler tablomuzun urun_kategori sütununa kategoriler tablomuzun id sütununu eşitledik. Aşağıdaki resme bakar iseniz bu ilişkide anahtara çok ilişki (1 to many) kurulduğunu görürsünüz. Yani kategoriler tablosuna sınırsız veri ekler iken ürünlere sadece kategorilerdeki anahtarlar eklenebilmektedir.

2357 Görüntülenme sayısı
  Etiketler:

BİR YORUM YAZIN

Bilgileriniz Güvende!E-Posta adresiniz ve diğer bilgileriniz kimseyle paylaşılmayacaktır.