logo

צורה נורמלית שנייה (2NF)

  • ב-2NF, רלציונלי חייב להיות ב-1NF.
  • בצורה הרגילה השנייה, כל התכונות שאינן מפתח פועלות במלואן, תלויות במפתח הראשי

דוגמא: נניח שבית ספר יכול לאחסן את הנתונים של המורים והמקצועות שהם מלמדים. בבית ספר, מורה יכול ללמד יותר ממקצוע אחד.

שולחן TEACHER

TEACHER_ID נושא TEACHER_AGE
25 כִּימִיָה 30
25 ביולוגיה 30
47 אנגלית 35
83 מתמטיקה 38
83 מַחשֵׁב 38

בטבלה הנתונה, תכונה שאינה ראשונית TEACHER_AGE תלויה ב-TEACHER_ID שהיא קבוצת משנה נכונה של מפתח מועמד. לכן זה מפר את הכלל עבור 2NF.

איך להטיל מחרוזת ל-int ב-java

כדי להמיר את הטבלה הנתונה ל-2NF, אנו מפרקים אותה לשתי טבלאות:

טבלה TEACHER_DETAIL:

TEACHER_ID TEACHER_AGE
25 30
47 35
83 38

טבלה TEACHER_SUBJECT:

מעבר אטימות css
TEACHER_ID נושא
25 כִּימִיָה
25 ביולוגיה
47 אנגלית
83 מתמטיקה
83 מַחשֵׁב