9 Ocak 2017 Pazartesi

Anahtar



Varlık kümesi içindeki varlıkları birbirinden ayırt etmek için kullanılan niteliklere varlık kümesinin anahtarı denir.

"Süper Anahtar" ve "Aday Anahtar" olmak üzere iki tür anahtar vardır.

Varlıkları ve ilişkileri tanımlamış bulunuyoruz. Ancak, bir varlık kümesi veya bir ilişki kümesi içinde yer alan varlıkları birbirinden nasıl ayırt edebileceğiz sorunu karşımıza çıkmaktadır.
Örneğin öğrenci? varlık kümesi içinde her bir öğrenciyi diğerinden ayırt eden nitelikler neler olabilir?
Öğrencileri birbirinden ayırt etmek için, öğrenci numarasını kullanabileceğimizi söyleyebiliriz.


Süper Anahtar

Varlık kümesi içinde yer alan bir varlığı kesin olarak tanımlamaya yarayan anahtara süper anahtar denir.

Bu anahtar sadece bir nitelikten oluşabileceği gibi, birden fazla niteliğin birleşiminden de oluşabilir.

Süper anahtarlar süper küme oluşturur. Bir süper anahtarın herhangi bir süper kümesi daima bir süper anahtar olarak kabul edilir.


Örnek: SSK numarası bir PERSONEL’i diğerinden ayırt etmek için yeterlidir. Çünkü bir ülkedeki tüm çalışanların sadece bir SSK numarası vardır.

İki farklı kişinin aynı SSK numarasına sahip olması olanaksızdır.

PERSONEL’in “adı” süper anahtar olarak tanımlanamaz. Çünkü aynı isme sahip birçok PERSONEL var olabilir. Ancak, “SSK numarası” bir süper anahtar olması nedeniyle, "SSK numarası" ve "PERSONEL’in adı" birlikte süper anahtar olarak değerlendirilebilir. Hatta “SSK Numarası, Adı, Bölümü” nitelikleri birlikte bir süper anahtar olarak kabul edilebilir.








Aday Anahtar




Varlık kümesi içinde yer alan bir varlığı kesin olarak tanımlamaya yarayan bir başka anahtar da aday anahtar olarak bilinmektedir.

Bir varlık kümesinin süper anahtarı bir veya daha fazla niteliğin birleşiminden oluşabiliyordu. Bu tür bir süper anahtarın herhangi bir alt kümesi aynı zamanda bir süper anahtar değil ise, bu anahtara aday anahtar ya da kısaca anahtar adı verilir.

Bazı durumlarda; varlıklara ilişkin birkaç nitelik, birlikte bir anahtar olarak tanımlanabilir.


Örnek: Aşağıda görüldüğü üzere, “SSK No” niteliği süper anahtarın bir parçası olmasına karşılık, tek başına varlıkları birbirinden kesin olarak ayırt etmekte kullanılabilir. O halde “SSK No” niteliği bir anahtardır.

Personel için; “SSK No, Adı, Bölümü” nitelikleri, birlikte "PERSONEL" varlığı içindeki her bir varlığı diğerinden ayırt etmek için kullanılabilir. Süper anahtar, varlıkları kesin olarak birbirinden ayırt etme özelliğine sahip olmasına karşılık, bu özelliği kazanmak için gerekenden fazla niteliği içerebilir. Anahtar ise, aynı tanıma uygundur. Ancak gerekenden fazla nitelik içermeme özelliğine sahiptir.