Databazada key turlari: primary, foreign, candidate key

Assalamu Alaykum , bugun databasedagi keylar va ular nima uchun ishlatishi haqida gaplashib o`tamiz . Qani ketdik ;)

Agenda

  1. DBMS dagi keylar nima?

  2. Ular bizga nimaga kerak ?

  3. Turli xil keylar

haqida gaplashib o'tamiz .

DBMS da key — bu bizga relational databasedagi qaysidir unique ma’lumotni yoki ma’lumotlar to'plamini olishga yordam beradigan atribut (maydon) yoki atributlar to'plami .

Keylar bizga nimaga kerak ?

  1. Biz keylar orqali table(jadval)dagi ma’lumotlarni bir-biridan ajratib turadi .

  2. Tablelar orasidagi aloqani o`rnatish uchun.

Masalan odatda har bir tablega yangi malumot qo`shilsa id berish majburiy qilingan buning yordamida biz tableda uniquelikni taminlagan holda malumotlarni shu id orqali olishimiz mumkin.

Keyning turlari

Super key

Super key — bu tableda shunchaki unique qiymatga ega bo'lgan maydonlar yoki maydonlar to'plami .

bu yerdagi super keylar bu :

  1. Emp_SSN 2.Emp_id 3.Emp_email 4.Emp_SSN va Emp_id va hokazo.

Candidate key

Candidate key — bu unique qiymatga ega bo'lgan istalgan maydon.U super keyning bir qismi bo'ladi .Agar super keyning bir qismi bo'lgan key yana super key bo'lolsa u candidate key bo'lolmaydi .

Tepadagi misoldan 1.Emp_SSN 2.Emp_id 3.Emp_email candidate key bo'la oladi .

Primary key

Primary key -bu jadvaldagi unique maydonlardan tanlab olingan candidate keyning biri.Qolgan tanlaymay qolgan ammo unique qiymatga ega maydonlar alternate keylar deyiladi

Masalan biz emailni primary key uchun tanlab olsak Emp_SSN alternate key bo’lib qoladi.

Foreign key

Foreign key — tableni boshqa tablega bog`lash uchun ishlatilinadigan atribut .Foreign key ishlatish ma’lumotlarni yaxlitligini taminlaydi.

Pastdagi misolda PersonId foreign key order va person table boglash uchun ishlatilinmoqda.

Composite key

Composite key — bu keyda bir necha maydonlar bo`lsa .

Masalan tepadagi misolda PersonId va OrderId unique deb olsak birgalikda composite key bo`ladi.

Compound key

Compound key — Agarda composite keyda kamida bitta attribut foreign key bo`lsa .

Tepadagi misolda PersonId foreign key bo`lganligi uchun PersonId va OrderId compound key ham hisoblanadi.

Surrogate key

Surrogate key — Agarda tableda unique key bo'lmasa ,unda uniquelikni hosil qilish uchun qo'shilgan key .U malumotga umuman mano qo'shmaydi.

Masalan odatda bizga keladigan sms tasdiqlash databaseda kod unique bo'lmasligi mumkin va bu yerda tablega id qo'shiladi message_id va bu har bir smsni uniqeligini taminlaydi malumotda esa hech qanaqa mano bermaydi.

surrogate key
surrogate key

Bugungi keylar haqidagi ma’lumotlarimiz shular edi .
E’tiboringiz uchun rahmat !!!
Xato va kamchililar uchun uzr .