מדריך SQL – תכנון בסיס הנתונים
תכנון בסיס הנתונים הינו תמיד השלב הראשון. תכנון ראשוני טוב ויסודי, יעשה את העבודה אח"כ קלה יותר, מסודרת יותר, ויחסוך את הצורך לחזור אחורה ולשנות את בסיס הנתונים כאשר אנו מגלים משהו שלא חשבנו עליו.
בסיס הנתונים מכיל טבלאות. כל טבלה מייצגת סוג מסויים של נתונים אותו אנו רוצים לשמור.
נתחיל בתכנון בסיס נתונים המיועד לניהול ספרים.
שלב ראשון:
ראשית, נחשוב, מהו המידע אותו אנו רוצים לשמור:
שלב שני:
לאחר מכן, נחליט איזה מידע (מאפיינים) אנו רוצים לשמור עבור כל יישות:
|
|
|
מאפיינים אלו יהוו בעצם את השדות בטבלאות שלנו.
אבל רגע… איך נוכל לקשר בין ספר מסויים למו"ל שלו? או למחבר שלו?
שלב שלישי:
נחליט, בצורה הגיונית, על קשרי הגומלין בין הטבלאות:
מטרתינו הינה לבנות את הטבלאות בצורה הכי יעילה שניתן, ונצליח לעשות זאת רק ע"י תכנון נכון, והבנה טובה של הקשרים בין הטבלאות. כדי לעשות זאת, אנו נשמור לכל רשומה בטבלה, מזהה ייחודי (לרוב יהיה מספרי) הנקרא PRIMARY KEY או PK בקיצור. באמצעות מזהה זה, נוכל לגשת לרשומה הספציפית.
ישנן שתי דרכים ליישום קשרי הגומלין בבנית הטבלאות:
1. כאשר היחס הוא יחד לרבים, למשל "לספר יש רק מו"ל אחד", אנו נשמור את ה-PK של טבלת הרבים, כעמודה נוספת בטבלת היחיד.
כלומר – בטבלת הספרים, נוסיף עמודה אשר תציין לכל ספר, מיהו המו"ל שלו. עמודה זו נקראת FORGEIN KEY או FK בקיצור.
2. כאשר היחס הוא רבים לרבים, למשל "מחבר יכול לחבר כמה ספרים, ולספר יכולים להיות כמה מחברים", אנו ניצור טבלה נוספת, מקשרת. טבלה זו תכיל את שני ה-PK משתי הטבלאות האחרות.
כלומר – ניצור טבלת ספר-מחבר. עבור כל ספר יופיעו מספריהם של המחברים, ועבור כל מחבר – מספריהם של כל הספרים שהוא כתב.
בצורה זו אנו מונעים חזרה על רשומות.
ישנם סוגים נוספים של יחסי גומלין בין טבלאות, אך הם פחות נפוצים ולכן לא נדון בהם במדריך זה.
עכשיו, המודל שלנו נראה כך:
|
|
|
|
שלב רביעי:
עכשיו רק נותר לקבוע את סוג הנתונים שמכיל כל שדה, כצעד אחרון לפני תחילת בניית הטבלאות.
הסוגים העיקריים הם:
בפרק הבא נלמד את בסיסי בניית הטבלאות באקסס.
את בסיס הנתונים המוכן ניתן להוריד פה.
תגובות בפייסבוק