מטרת Boyce-Codd Normal Form היא להגביר את שלמות הנתונים על ידי ארגון העמודות והטבלאות של מסד נתונים יחסי על מנת להשיג נורמליזציה של מסד הנתונים. נורמליזציה של מסד הנתונים מתרחשת כאשר יש קשרים מבוססים בין טבלאות וכאשר לטבלאות יש כללים מוגדרים כדי להפוך את מסד הנתונים לגמישים יותר ולשמור על הנתונים.
המטרות של נורמליזציה של מסד הנתונים הן לחסל נתונים מיותרים ולהבטיח התלות בנתונים הגיונית. מסד נתונים מנורמל כאשר אותם נתונים אינם מאוחסנים ביותר מטבלה אחת וכאשר רק נתונים קשורים מאוחסנים בטבלה.
מקור הצורה הרגילה של בויס-קוד
בעקבות סדרה של הנחיות מבטיחים שמסדי נתונים מנורמלים. הנחיות אלו מכונות צורות רגילות וממוספרות מאחת עד חמש. מסד נתונים יחסי מתואר כמנורמל אם הוא עונה על שלוש הצורות הראשונות: 1NF, 2NF ו-3NF.
BCNF נוצר כהרחבה לצורה הרגילה השלישית, או 3NF, בשנת 1974 על ידי ריימונד בויס ואדגר קוד. הגברים עבדו על יצירת סכימות מסד נתונים הממזערות יתירות במטרה להפחית את זמן החישוב. הצורה הרגילה השלישית מסירה עמודות שאינן תלויות במפתח הראשי בנוסף לעמידה בהנחיות בטופס הרגיל הראשון והשני. BCNF, שלעיתים מכונה 3.5NF, עומד בכל הדרישות של 3NF ודורש שלמפתחות מועמדים לא תהיה כל תלות בתכונות אחרות בטבלה.
בזמן הקמתה של BCNF, בויס היה אחד מהמפתחים העיקריים של Structured English Query Language, מאוחר יותר סטנדרטית כ-SQL, אשר שיפרה את אחזור הנתונים על ידי שימוש במודל ההתייחסותי של Codd.במודל זה, Codd טען שניתן להפחית את המורכבות המבנית של מסדי נתונים, מה שאומר שאילתות יכולות להיות חזקות וגמישות יותר.
באמצעות תובנות מסד הנתונים היחסיות שלו, Codd הגדיר הנחיות 1NF, 2NF ו-3NF. הוא חבר עם בויס כדי להגדיר את BCNF.
Candidate Keys ו-BCNF
מפתח מועמד הוא עמודה או שילוב של עמודות בטבלה היוצרים מפתח ייחודי במסד הנתונים. שילוב התכונות מזהה רשומת מסד נתונים מבלי להתייחס לנתונים אחרים. כל טבלה יכולה להכיל מפתחות מועמדים מרובים, שכל אחד מהם יכול להיות המפתח הראשי. טבלה מכילה מפתח ראשי אחד בלבד.
מפתחות המועמדים חייבים להיות ייחודיים.
יחס הוא ב-BCNF אם כל דטרמיננט הוא מפתח מועמד. שקול טבלת מסד נתונים המאחסנת מידע על העובדים ויש לה את התכונות,,, ו-.
בטבלה זו, השדה קובע שם_שם ושם_משפחה. באופן דומה, הטפול (,) קובע.
מזהה עובד | שם פרטי | שם משפחה | כותרת |
13133 | Emily | Smith | מנהל |
13134 | Jim | Smith | Associate |
13135 | Emily | Jones | Associate |
מפתח המועמד עבור מסד נתונים זה הוא מכיוון שהוא הערך היחיד שלא ניתן להשתמש בו בשורה אחרת.
שאלות נפוצות
מהן הדרישות לטופס רגיל של Boyce-Codd?
טבלה עומדת בדרישות של Boyce-Codd Normal Form (BCNF) אם כל הקובעים הם מפתחות מועמדים והקשר הוא בצורת Third Normal Form (3NF). 3NF עומד בכללים עבור צורה רגילה ראשונה (1NF) וצורה רגילה שנייה (2NF), וכל העמודות תלויות במפתח הראשי.
מה ההבדל בין הצורה הרגילה הרביעית לבין הצורה הרגילה של בויס-קוד?
הצורה הרביעית הרגילה (4NF) היא רמה אחת אחרי Boyce-Codd Normal Form (BCNF) בנורמליזציה של מסד נתונים. 4NF עומד בדרישות 3NF בדיוק כפי שעושה BCNF. עם זאת, לטבלאות 4NF אין תלות מרובה ערכים, או יחסים רבים-לאחד, בעוד לטבלאות BCNF עשויות להיות תלות אלו.