Jadvalni birinchi normal shaklga o'tkazish. Q jadval birinchi normal shaklda ham emas, chunki bizda takrorlangan satrlar bor (Olim Ashirov) va ba'zi yacheykalar qiymatlar ro'yxatini saqlaydi (har bir telefon raqami bitta qiymatdan iborat).
Ikkinchi normal shakl (2NF) Ikkinchi normal shakl (2NF) talablari
Ma'lumotlar bazasi ikkinchi normal shaklda (2NF) bo'lishi uchun uning jadvallari quyidagi talablarga javob berishi kerak:
Jadval birinchi normal shaklda bo'lishi kerak
Jadvalda kalit bo'lishi kerak
Jadvalning barcha kalit bo'lmagan ustunlari to'liq kalitga bog'liq bo'lishi kerak (agar u tarkibli bo'lsa)
Agar kalit tarkibli bo'lsa, ya'ni bir nechta ustunlardan iborat, keyin barcha boshqa kalit bo'lmagan ustunlar butun kalitga bog'liq bo'lishi kerak. Agar ba'zi bir atribut (ustun) kalitning bitta ustuniga bog'liq bo'lsa, ma'lumotlar bazasi ikkinchi normal shaklda emas deb hisoblanadi.
Boshqacha qilib aytganda, jadvalda faqat kalitning yarmini bilib olish mumkin bo'lgan ma'lumotlar bo'lmasligi kerak.
Ikkinchi normal shaklning (2NF) asosiy qoidasi quyidagicha:
Jadvalda har bir satrni aniqlash mumkin bo'lgan to'g'ri kalit bo'lishi kerak. Jadvalni ikkinchi normal shaklga o'tkazishga misol
Tasavvur qilaylik, tashkilot xodimlari ro'yxatini saqlashimiz kerak va buning uchun quyidagi jadvalni tuzdik. “Xodimlar” jadvali
FISH
Lavozim
Bo’lim
Bo’lim tavsifi
Anvar Ergashev
Dasturchi
Rivojlanish bo'limi
Ilovalar va saytlarni ishlab chiqish va ularga xizmat ko'rsatish
Anvar Ergashev
Buxgalter
Buxgalteriya
Buxgalteriya hisob-kitoblarini amalga oshirish
Olim Ashirov
Sotuvchi
Amalga oshirish bo’limi
Mahsulot sotilishini tashkil etish
Birinchi normal shaklning shartlarini bajarilishini ko'ramiz, ya'ni unda takrorlanadigan satrlar yo'q va barcha qiymatlar atomikdir. Endi ushbu jadvalni ikkinchi normal shaklga normalizatsiya qilish jarayonini boshlashimiz mumkin.
Buning uchun nima qilishimiz kerak? Biz asosiy kalitni kiritishimiz kerak.
Mavzu sohasi bilan ozgina ishlagandan so'ng, ushbu tashkilotda har bir xodimga noyob kadrlar raqami berilganligini aniqlaymiz, u hech qachon o'zgartirilmaydi.
Agar bizda bunday xodimlar raqami bo'lmasa yoki u tashkilot ichida takrorlanishi mumkin bo'lsa (masalan, ishchi ishdan bo'shatilgan bo'lsa va bir muncha vaqt o'tgach uning raqami yangi xodimga tayinlangan bo'lsa), unda asosiy kalit uchun biz sun'iy kalitni yaratishimiz mumkin avtomatik ravishda ko'paytiriladigan ma'lumotlar turi bilan jadvalga yangi yozuvlar qo'shilsa bo'ladi. Shunday qilib, biz jadvaldagi har bir qatorni xuddi shu tarzda aniq belgilab olamiz.
Shunday qilib, ushbu jadvalni ikkinchi normal shaklga keltirish uchun unga yana bitta atribut qo'shishimiz kerak, ya'ni xodimlar raqami ko'rsatilgan ustun.
Oddiy birlamchi kalit bilan ikkinchi normal shakldagi “Xodimlar” jadvali.