Boysning normal shakli - Codd. Jadval oddiy Boyce-Codd shaklida bo'ladi, agar uning maydonlari orasidagi funktsional bog'liqlik mumkin bo'lgan kalitga to'liq funktsional bog'liqlikka kamaytirilsa. Ga binoan bu ta'rif ma'lumotlar bazasi tuzilmasida (2.4-rasmga qarang) barcha jadvallar Boyes-Codd normal shakli talablariga mos keladi. Ma'lumotlar bazasi jadvallarini yanada optimallashtirish jadvallarning to'liq dekompozitsiyasigacha kamaytirilishi kerak. Jadvalning to'liq parchalanishi o'zboshimchalik bilan sonli proektsiyalar to'plami deb ataladi, ularning ulanishi jadval mazmuniga to'liq mos keladi. Proektsiya - bu yangi jadvalning bir yoki bir nechta ustunlarini o'z ichiga olmaydigan jadvalning nusxasi. To'rtinchi normal shakl. To'rtinchi normal shakl - bu beshinchi normal shaklning alohida holati, bunda to'liq parchalanish ikkita proektsiyaning birlashuvi bo'lishi kerak.
31
To'rtinchi oddiy shakldagi, lekin beshinchi normal shakl ta'rifiga mos kelmaydigan jadvalni topish juda qiyin.
Beshinchi oddiy shakl. Jadval beshinchi oddiy shaklda bo'ladi, agar barcha proektsiyalarda har bir deko-pozitsiyada kalit bo'lishi mumkin bo'lsa. To'liq parchalanishga ega bo'lmagan jadval ham beshinchi oddiy shaklda. Amalda, ma'lumotlar bazasi jadvallarini optimallashtirish uchinchi oddiy shaklda tugaydi. Jadvallarni to'rtinchi va beshinchi oddiy shakllarga qisqartirish, nazarimizda, faqat nazariy qiziqish uyg'otadi. Amalda bu masala yangi jadval yaratish uchun so'rovlarni ishlab chiqish yo'li bilan hal qilinadi. 2.3. Jadvallar orasidagi munosabatlarni loyihalash Ma'lumotlar bazasining dastlabki jadvallarini normallashtirish jarayoni sizga axborot tizimining maqbul tuzilishini yaratishga imkon beradi - eng kam xotira resurslarini talab qiladigan va natijada axborotga kirishning eng qisqa vaqtini ta'minlaydigan ma'lumotlar bazasini ishlab chiqish. Shu bilan birga, bitta manba jadvalining bir nechta bo'linishi axborot tizimlarini loyihalashning eng muhim shartlaridan birini bajarishni talab qiladi - ma'lumotlar bazasi ishlayotganda ma'lumotlarning yaxlitligini ta'minlash. Asl jadvallarni normallashtirishning yuqoridagi misolida (2.3 -rasmga qarang), ikkita jadvaldan, biz nihoyat etti jadvalni uchinchi va to'rtinchi oddiy shakllarga qisqartirdik. Amaliyot shuni ko'rsatadiki, haqiqiy ishlab chiqarish va biznesda ma'lumotlar bazalari ko'p foydalanuvchilarli tizimlardir. Bu alohida jadvallarda ma'lumotlarni yaratish va saqlashga ham, qaror qabul qilish uchun ma'lumotlardan foydalanishga ham tegishli. Yuqorida ko'rib chiqilgan misolda, universitet yoki kollejda haqiqatan ham ishlaydigan o'quv jarayonlarini boshqarish tizimida o'quv guruhlarining dastlabki shakllanishi qabul komissiyalari tomonidan kirish imtihonlari natijalariga ko'ra abituriyentlarni ro'yxatga olishda amalga oshiriladi. Talabalar tarkibi to'g'risidagi ma'lumotni keyinchalik universitetlarda saqlash dekanatlarga, kollejlarda esa o'quv bo'limlariga yoki tegishli tuzilmalarga yuklatilgan. Guruhlardagi o'quv fanlari tarkibi boshqa xizmatlar yoki mutaxassislar tomonidan belgilanadi. O'qituvchilar tarkibi haqidagi ma'lumotlar kadrlar bo'limlarida shakllantiriladi. Test va imtihon sessiyalari natijalari dekanat va kafedra mudirlari uchun, shu jumladan, muvaffaqiyat qozongan 32 talabaga stipendiya berish yoki muvaffaqiyatsiz talabalarning "stipendiyasidan chiqish" to'g'risida qaror qabul qilish uchun zarurdir. Ma'lumotlar bazasidagi har qanday jadvaldagi har qanday o'zgarish boshqa jadvallarning hammasini mos ravishda o'zgartirishi kerak. Bu ma'lumotlar bazasining yaxlitligini ta'minlashning mohiyati. Amalda, bu vazifa ma'lumotlar bazasi jadvallari orasidagi aloqalarni o'rnatish orqali amalga oshiriladi. Keling, jadvallar orasidagi munosabatlarni o'rnatishning asosiy qoidalarini shakllantiraylik. 1. Bog'langan ikkita jadvaldan xo'jayin va qulni tanlang. 2. Har bir jadvalda kalit maydonini tanlang. Asosiy jadvalning kalit maydoni deyiladi asosiy kalit. Qullar jadvalining kalit maydoni deyiladi tashqi kalit. 3. Cheklangan jadvallar maydonlari bir xil ma'lumot turiga ega bo'lishi kerak. 4. Jadvallar o'rtasida quyidagi turdagi bog'lanishlar o'rnatiladi: "birma -bir"; Birdan ko'pga; Ko'pdan-ko'pga: asosiy jadvalning ma'lum bir qatori istalgan vaqtda bo'ysunuvchi jadvalning faqat bitta qatoriga bog'langanda, yakka-yakka munosabatlar o'rnatiladi; har bir vaqtda asosiy jadvalning ma'lum qatori bo'lgan hollarda, ko'pdan-ko'p munosabatlar o'rnatiladi
33 bo'ysunuvchi jadvalning ko'p satrlari bilan bog'liq; bu holda, bo'ysunuvchi jadvalning har qanday satri asosiy jadvalning faqat bitta qatori bilan bog'liq; "ko'pdan-ko'pgacha" munosabati har qanday vaqtda asosiy jadvalning ma'lum bir qatori bo'ysunuvchi jadvalning bir necha qatorlari bilan bog'langan va bir vaqtning o'zida bo'ysunuvchi jadvalning bir qatori bir nechta bilan bog'liq bo'lgan hollarda o'rnatiladi. asosiy jadval qatorlari. Bosh jadvaldagi asosiy kalit qiymatini o'zgartirganda, bog'liq jadvalning quyidagi xatti -harakatlari mumkin. Kaskadli. Asosiy jadvaldagi birlamchi kalit ma'lumotlari o'zgarganda, bog'liq jadvaldagi tegishli tashqi kalit ma'lumotlari o'zgaradi. Barcha mavjud ulanishlar saqlanib qoladi. Cheklash. Agar siz bog'liq jadvaldagi qatorlar bilan bog'liq bo'lgan asosiy kalit qiymatini o'zgartirishga harakat qilsangiz, o'zgarishlar bekor qilinadi. Faqat bog'liq kalit bilan hech qanday aloqa o'rnatilmagan asosiy kalit qiymatlarini o'zgartirishga ruxsat beriladi. Tashkilot (munosabatlar). Birlamchi kalit ma'lumotlari o'zgarganda, tashqi kalit NULL ga o'rnatiladi. Bog'liq jadval uchun qator egalik ma'lumotlari yo'qoladi. Agar siz birlamchi kalitning bir nechta qiymatlarini o'zgartirsangiz, bog'liq jadvalda ilgari o'zgartirilgan tugmalar bilan bog'liq bo'lgan qator qatorlar guruhlari hosil bo'ladi. Shundan so'ng, qaysi chiziq qaysi asosiy kalit bilan bog'langanligini aniqlash mumkin emas. Fig. 2.6 -rasmda ko'rsatilgan ma'lumotlar bazasi jadvallari orasidagi ulanish sxemalarini ko'rsatadi. 2.5. Nazorat savollari 1. Ma'lumotlar bazasi jadvalining quyidagi elementlariga ta'rif bering: maydon, katak, yozuv. 2. "Kalit", "kalit maydon" tushunchalari nimani anglatadi? 3. Qaysi tugmachali maydon asosiy kalit, qaysi tashqi kalit deb ataladi? 4. Ma'lumotlar bazasi jadvallarini normalizatsiya qilish jarayoni qanday? 5. Ma'lumotlar bazasi jadvallarining qanday beshta normal shakllarini bilasiz? 6. Ma'lumotlar bazasi jadvallari orasidagi munosabatlarning quyidagi turlarini aniqlang: "birma -bir"; Birdan ko'pga; Ko'pdan-ko'pgacha.
Do'stlaringiz bilan baham: |