Relyatsion ma'lumotlar bazalari - 10-Mavzu: Ma’lumotlar bazalari va katta hajmdagi ma’lumotlar bilan ishlash texnologiyalari Reja

|
10-Mavzu: Ma’lumotlar bazalari va katta hajmdagi ma’lumotlar bilan ishlash texnologiyalari Reja
|
bet | 4/44 | Sana | 10.06.2024 | Hajmi | 0,95 Mb. | | #262104 |
Bog'liq 10-Mavzu Ma’lumotlar bazalari va katta hajmdagi ma’lumotlar bilRelyatsion ma'lumotlar bazalari
Relyatsion ma'lumotlar bazalari jadvallardan iborat. Har bir jadval ustunlardan iborat (ular maydonlar yoki atributlar deb nomlanadi) va qator (ular yozuvlar yoki kortejlar deb nomlanadi). Relyatsion ma'lumotlar bazalaridagi jadvallar bir qator xususiyatlarga ega. Asosiylari quyidagilar:
Jadvalda ikkita bir xil qator bo'lishi mumkin emas. Matematikada bunday xususiyatga ega jadvallar munosabatlar deb atalib - ingliz tilida RELATION, shuning uchun ham u relyatsion deb nom olgan.
Ustunlar ma'lum bir tartibda joylashtirilgan bo'lib, ular jadval tuzilganda hosil bo'ladi. Jadvalda qator bo'lmasa ham, lekin kamida bitta ustun bo'lishi kerak.
Har bir ustunning o'ziga xos nomi bor (jadval chegarasida) va bir ustundagi barcha qiymatlar bir xil turga mansub (raqam, matn, sana ...).
Har bir ustun va qator kesishgan joyda faqat atomar qiymati bo'lishi mumkin (qiymatlar guruhidan iborat bo'lmagan bitta qiymat). Ushbu shartni qondiradigan jadvallar normallashtirilgan deb nomlanadi.
Barchasi namunada namoyon bo’ladi.
Aytaylik, forum uchun ma'lumotlar bazasini yaratmoqchimiz. Forumda mavzularni yaratadigan va ushbu mavzularda xabarlarni joylashtiradigan foydalanuvchilar ro'yxatdan o'tgan. Ushbu ma'lumotlar MB da saqlanishi kerak. Nazariy jihatdan (qog'ozda) biz bularning barchasini bitta jadvalda joylashtirishimiz mumkin, masalan:
Ism
|
E-mail
|
Parol
|
Mavzularni yaratish
|
Xabarlarni yaratish
|
|
|
|
|
|
|
|
|
|
|
Ammo bu atomar xususiyatiga zid keladi (bitta katakdagi bitta qiymat) va biz
“Темы и Сообщения” ustunlarida cheksiz ko'p qiymatlarni qabul qilamiz. Bu jadvalni 3 ga bo’lishni anglatadi: Foydalanuvchilar, mavzular va xabarlar.
Bizning “foydalanuvchilar” jadvali barcha shartlarga javob beradi. Mavzular va xabarlar esa yo’q. Axir jadvalda ikkita bir xil satr bo'lishi mumkin emas.
Foydalanuvchi ikkita bir xil xabar qoldirmasligiga kafolat qayerda, masalan:
Xabar
Matn
|
|
Muallif
|
Menimcha, bunday qilishimiz kerak ....
|
Azamat
|
|
Roziman
|
Andrey
|
|
Yana bunday ham qilish mumkin ...
|
Sabrina
|
|
Roziman
|
Andrey
|
|
Bundan tashqari, biz har bir xabarning qaysidir mavzuga tegishli ekanini bilamiz. Jadvallarimizdan qanday qilib bilib olishingiz mumkin? Hech qanaqasiga. Ushbu muammolarni hal qilish uchun relyatsion ma'lumotlar bazalarida kalit mavjud.
Birlamchi kalit (qisqartmasi РК - primary key) - qiymatlari barcha qatorlarda turlicha bo'lgan ustun. Birlamchi kalitlar mantiqiy (tabiiy) va surrogat (sun'iy) bo'lishi mumkin. Shunday qilib, bizning jadvalimiz foydalanuvchilari uchun birlamchi kalit elektron pochta ustuni bo'lishi mumkin (nazariy jihatdan bir xil elektron pochtaga ega ikkita foydalanuvchi bo'lishi mumkin emas). Amalda, surrogat kalitlardan foydalanish yaxshiroqdir. Bundan tashqari, birlamchi kalitlarni o'zgartirish mumkin emas. Lekin foydalanuvchining elektron pochtasi o'zgartirilsa nima bo'ladi?
Surrogat kaliti ma'lumotlar bazasidagi qo'shimcha maydonga ega. Odatda, bu yozuvning tartib raqami (siz ularni o'zingizning xohishingizga ko'ra o’zgartirishingiz mumkin va ular noyob ekanligiga ishonch hosil qiling). Keling, jadvalimizga birlamchi kalit maydonlarni kiritamiz:
|
| |