Bir veritabanı içerisine eklenen verilerin belirli kurallar çerçevesinde bütünlüğünün, tutarlılığının sağlanıp saklanabilmesi için kullanılır.  Oracle’ ın sağlamış olduğu constraints (kısıtlayıcılar) sayesinde veriler tutarlı olarak saklanabilir.

Başlıca constraint (kısıtlayıcı) yapıları:

  • Primary Key Constraint
  • Foreign Key Constraint
  • Check Constraint
  • Unıque Constraint
  • Not Null Constraint

Constraint yapıları sistem tarafından veya kullanıcı tarafından tanımlanabilir.

The Not Null Constraint

  Boş bırakılamaz anlamına gelen, Not Null kıstlayıcısı  hangi kolonlara tanımlandıysa o kolonda ki satırlar null (boş) değerler alamaz.

Aşağıda bir okula ait  öğrencilerin bilgilerini içeren örnek bir veritabanı oluşturalım.

  • 1 – A sınıfında okuyan öğrencilerin bilgilerini sakladığımız “sınıf1a” tablosunu oluşturalım.

sınıf1a tablosunda sistem tarafından veya kullanıcı tarafından atanan not null constraint yapısını görebiliriz.

The Unique Constraint

   Bir tabloda ki primary key tanımlı kolonlar hariç, diğer kolonlara unique constraint tanımlanabilir. Bu kolonlarda primary key tanımlı kolonlar gibi tekilleştirici, özgülleştirici kolonlardır.

  • Unique constraint tanımlı kolonlar null (boş) bırakılabilir.
  • Unique constraint tanımlı kolonlara aynı değerin atanmasına izin verilmez.

Bu sefer aşağıda sınıf1a tablosunda  email sütunu için unique constraint oluşturalım. Tabloya eklenen değerlere dikkat edildiğinde email sütununa null (boş) değer eklenebilmektir. Aynı isimde veri eklenenemez, tekil olmak zorunda.

The Primary Key Constraint

     Bir kolona primary key kısıtlayıcısının atanması o kolonun benzersiz, tekil ve özgül olduğunun ifadesidir.

  • Primary key constraint tanımlı kolona  asla null (boş) değer atanamaz.
  • Primary key constraint tanımlı kolona aynı değerin atanmasına izin verilmez.

The Check Constraint

    Check constraints ile sütunlara belirli kurallar konabilir. Şimdi yukarıda vermiş olduğumuz örneği primary key ve check constraint ile derleyip tekrar oluşturalım.

   İlk olarak primary key ve check constraint ekleyerek tabloyu tekrar create edelim. Primary key oluşturma şeklini iki ayrı  şekilde gösterebiliriz.

Şimdi oluşturduğumuz tabloya veri ekleyebiliriz.

The Foreign Key Constraint

   Foreign key bir tabloda ki kolon ile ilişkili olduğu tabloda ki kolondan geldiğini doğrulamak için kullanılan kısıttır.

   Aşağıda örnek  olarak “tumokul” isimli yeni bir tablo oluşturalım. Bu tabloda okulda ki tüm öğrencilerin bilgileri tutulacak. Daha sonra bu  tabloya veri ekleyelim.

   Şimdi “sinif1a” isimli tabloya “tümokul” tablosunda ki okul_numara sütununu foreign key olarak tanımlayalım. “tümokul” tablosunu referans gösterelim. Foreign key constraint yapısını iki şekilde oluşturabiliriz. Aşağıda iki farklı şekilde nasıl oluştuğu gösterilmektedir.

   Foreign key yapısını tanımladıktan sonra, “sınıf1a” tablosunda veri ekleyelim. Daha sonra “sınıf1a” tablosu ile ilişkilendirdiğimiz “tümokul” tablosunu inner join bağlantı yöntemi ile birbirine bağlayarak oluşturduğumuz datayı görelim.

Böylece oracle server üzerinde ki constraint yapılarını tamamlamış olduk. Oracle server aracılığı ile bir başka sql çalışmasında görüşmek üzere…  🙂