Skip to main content

כיצד יושרה הפניה מבטיחה עקביות מסד נתונים

שטח הפקר | עונה 1 - ממליכי הח"כים (אַפּרִיל 2025)

שטח הפקר | עונה 1 - ממליכי הח"כים (אַפּרִיל 2025)
Anonim

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

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

מפתח ראשי

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

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

הדרך הפשוטה ביותר לאכוף שלמות ייחוס אינה לאפשר שינויים במפתח הראשי.

מפתח זר

מפתח זר הוא מזהה בטבלה התואמת את המפתח הראשי של טבלה אחרת. המפתח הזר יוצר את הקשר עם טבלה אחרת. שלמות התייחסות מתייחסת למערכת היחסים בין טבלאות אלה.

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

דוגמה לכללים של יושרת הפניה

שקול, למשל, את המצב שבו יש לך שני שולחנות: עובדים ומנהלים. בטבלה 'עובדים' יש מאפיין מפתח זר הנקרא ManagedBy, המצביע על הרשומה עבור מנהל כל עובד בטבלת המנהלים. שלמות הפניה מאכפת את שלושת הכללים הבאים:

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

יתרונותיו של אילוצי יושרים

שימוש במערכת ניהול מסדי נתונים יחסיים עם שלמות רלוונטית מציע מספר יתרונות:

  • מונע את הכנסת הנתונים הכפולים
  • מונע טבלה אחת מלהצביע על שדה שאינו קיים בטבלה אחרת
  • ערבויות עקביות בין טבלאות "שותפות"
  • מונע מחיקה של רשומה המכילה ערך שמוצג על ידי מפתח זר בטבלה אחרת
  • מונע הוספת רשומה לטבלה שמכילה מפתח זר, אלא אם קיים מפתח ראשי בטבלה המקושרת