בסיס נתונים טבלאי
מתוך ויקיפדיה, האנציקלופדיה החופשית
בסיס נתונים טבלאי (מכונה גם בסיס נתונים יחסי או באנגלית RDBMS) הוא כיום המודל הנפוץ ביותר של בסיס נתונים, שדחק הצידה את המודלים שקדמו לו: בסיס נתונים רשתי ובסיס נתונים היררכי.
במודל זה בסיס הנתונים בנוי מטבלאות, כאשר כל טבלה מכילה מידע על ישות מסוימת (לדוגמה, לקוחות במערכת בנקאית). ולכל רשומה בטבלה יש שדה ID שמזהה באופן יחודי את הרשומה. הקשרים בין הרשומות בטבלאות השונות נעשה באמצעות שדה מיוחד זה הנקרא שדה מפתח. שליפת מידע ופעולות עדכון בבסיס נתונים טבלאי נעשות באמצעות שפת SQL, המהווה ממשק המאפשר גישה לנתונים מבלי להתייחס לאופן שמירתם בבסיס הנתונים.
בסיס הנתונים הטבלאי הוצג לראשונה במאמרו החלוצי של אדגר קוד A Relational Model of Data for Large Shared Data Banks
תוכן עניינים |
[עריכה] מרכיבי בסיס הנתונים הטבלאי
יחידת הנתונים הקטנה ביותר בבסיס הנתונים הטבלאי (כמו במודלים אחרים לבסיסי נתונים) היא השדה (field). בנתוני אזרח במרשם התושבים, למשל, מספר הזהות, השם הפרטי, ושם המשפחה הם שדות בטבלה. השדה חייב להיות מסוג מסוים, שמגביל את הזנת הערכים לו לאותו סוג נתונים. כך, למשל, שדה שהוגדר מספרי לא יוכל להכיל תווי אותיות.
אוסף כל השדות המתארים את האזרח הוא הרשומה (record) של אותו אזרח, ואוסף הרשומות של כל האזרחים הוא טבלה (table).
דוגמה לטבלת אזרח:
| מספר תעודת זהות | שם משפחה | שם פרטי | תאריך לידה | שם האב |
| 05674856 | כהן | אברהם | 20.08.77 | ישראל |
| 06777777 | לוי | יצחק | 12.10.99 | שלמה |
| 02775877 | יעקובוביץ | ישראל | 06.12.57 | יהושע |
עמודה בטבלה היא שדה, ושורת נתונים היא רשומה. שדה תעודת זהות הוא שדה המפתח היחודי שעל פיו, יקושרו רשומות בטבלאות אחרות לטבלה זו.
[עריכה] מפתחות
לכל רשומה יש מפתח ראשי (primary key), המשמש לזיהוי חד-משמעי שלה. לכל טבלה יכול להיות רק מפתח ראשי אחד, שערכיו חייבים להיות יחודיים ואסור שיהיו ריקים.
מפתח משני משמש לאיתור ומיון מהיר של רשומות ולקישור בין רשומות בטבלאות שונות. מפתח משני יכול להיות בעל ערכים לא יחודיים. ברשומת האזרח, מספר הזהות משמש כמפתח ראשי, ושם המשפחה והשם הפרטי משמשים כמפתח משני. מפתח זר משמש לקישור למפתח ראשי בטבלה אחרת. מפתח המורכב מכמה שדות קרוי מפתח מורכב.
המפתח או האינדקס הינו שדה שמוגדר ככזה. כמעט כל שדה יכול להיות מוגדר כשדה מפתח (למעט שדה בינארי ושדה מזכר), אבל רק שדה אחד בכל טבלה יכול להיות מוגדר כמפתח ראשי, שאר המפתחות יהיו מוגדרים כמפתחות זרים או מפתחות משניים. שדה מפתח הוא שדה שהתוכנה יוצרת בעבורו מפתח פנימי ממויין של כל הערכים באותו שדה. תפקידיו של המפתח, להאיץ את העבודה עם הטבלה, במיון, בחיפוש ובשליפה של ערכים. וכן למנוע במפתח שהוגדר ללא כפילות, הזנת ערכים זהים. כמו גם, לבקר את הקישורים בין הטבלאות השונות.
[עריכה] יחסים בין הטבלאות
בסיס נתונים מכיל בדרך כלל טבלאות רבות, המקושרות באמצעות מפתחות. לתרשים שמבטא את כל הקשרים בין הטבלאות השונות קוראים דיאגרמה, מבנה חשוב בהגדרת מסד הנתונים הוא "תרשים קשרי ישויות" (ERD - Entity Relationship Diagrams) שבו מתארים את כל הטבלאות והיחסים שהם מקיימים.
היחסים בין טבלאות יכולים להיות מכמה סוגים:
- יחס של אחד לרבים, שבו לכל רשומה בטבלה הראשית יכולים להיות מספר רשומות בטבלה המשנית,
- יחס של אחד לאחד, שבו לכל רשומה בטבלה הראשית יכולה להיות רק רשומה אחת בטבלה המשנית.
- יחס של רבים לרבים, שבו בכל רשומה באחת מהטבלאות המקושרות יכולים להיות מספר רב של רשומות בטבלה השניה. (יחס זה מיושם באמצעות טבלת ביניים, שמחברת בין שתי הטבלאות המתייחסות)
דוגמה: במרשם התושבים, לאם אחת מקושרים ילדים אחדים (יחס של אחד לרבים), אך לא יותר מבן-זוג אחד (יחס של אחד לאחד). בבסיס הנתונים יש מנגנון בקרה מיוחד האוכף את התנאים הללו ושמו מנגנון אימות היחוסים הוא גם מכונה מנגנון בקרת יתומים ואלמנות, מכיוון שאינו מאפשר ליצור או להותיר רשומות בטבלאות המשניות ללא כל התייחסות בטבלה הראשית.
טבלת ילדים שמתייחסת לטבלת אזרח
| מספר תעודת זהות של האב | שם משפחה | שם פרטי | תאריך לידה |
| 05674856 | כהן | דוד | 20.8.2000 |
| 05674856 | כהן | עדי | 12.10.2003 |
| 05674856 | כהן | קרן | 12.10.2005 |
על פי שדה "מספר תעודת הזהות של האב" שקיים בטבלת ילדים, ניתן לשייך את כל הרשומות של הילדים לאביהם בטבלת אזרח
[עריכה] יישומים מסחריים של המודל הטבלאי
- DB2
- dBase IV
- InterBase
- Microsoft Access - גרסת אנסי 89,92
- Microsoft SQL Server - גרסת אנסי 92
- MySQL
- Oracle
- PostgreSQL (במערכות לינוקס/יוניקס)
- Sybase
- Informix
[עריכה] ראו גם
[עריכה] לקריאה נוספת
- רז הייפרמן, בסיסי נתונים טבלאיים ושפת SQL, הוצאת הוד עמי.
[עריכה] קישורים חיצוניים
| אחסון נתונים |
| רשומה | טבלה |מפתח ראשי | מפתח מורכב | קובץ | בסיס נתונים | SAN | NAS | נרמול | תרשים קשרי ישויות |

