שווה לנסות!
העוצמה של מסד נתונים יחסי טמון בשילוב נתונים בין טבלאות. לשם כך, תחילה עליך ליצור קשרי גומלין בין הטבלאות. לאחר מכן, Access כדי לשלב נתונים בשאילתות, בטפסים ובדוחות.
כדי לראות את כל קשרי הגומלין הקיימים המוגדרים עבור מסד נתונים, פתח תבנית Access, עבור אל הכרטיסיה כלי מסד נתונים ובחר 'קשרי גומלין'.
הערה: אם תפתח מסד נתונים ריק או שלא הגדרת קשרי גומלין בין טבלאות, Access תתבקש להוסיף טבלה או שאילתה. כדי שתוכל להוסיף קשר גומלין, אתה זקוק לשתי טבלאות לפחות. באופן אידיאלי, עליך לבנות תחילה את כל הטבלאות שלך. כדי ללמוד עוד, ראה יצירת קשרי גומלין עם אשף בדיקת המידע ויצירהשל קשרי גומלין עם 'קשרי גומלין' החלונית.
הבנת תצוגת 'קשרי גומלין' שלך
הקווים בתצוגת 'קשרי גומלין' מציינים חיבורים בין הטבלאות. בתמונה הבאה, הטבלה מימין היא טבלת האב. הטבלה בצד ימין היא טבלת הצאצא. הקו ביניהם מחבר את השדות (במקרה זה, מזהה הזמנה ומזהה מוצר) המשמשים כדי להתאים נתונים.
קווים וסימנים מראים לך כיצד הטבלאות קשורות:
-
קו חיבור עבה פירושו שאתה אולץ שלמות נתוני הקשרים. זה טוב. הוא שומר על סינכרון הנתונים שלך.
-
באיור שלנו, המספר 1 מציין שיכולה להיות רשומה תואמת אחת בלבד בטבלה זו. בטבלה Orders המוצגת כאן, רק רשומה אחת תואמת לכל הזמנה.
-
סימן ∞ מציין שרשומות רבות יכולות לכלול את אותו מזהה. בטבלה Order Details המוצגת כאן, הזמנה (שצוינה על-ידי מזהה ההזמנה שלה) עשויה להופיע יותר מפעם אחת, מכיוון שאותן הזמנות עשויות לכלול מוצרים מרובים.
סוגי קשרי גומלין בין טבלאות
קיימים שלושה סוגים של קשרי גומלין בין טבלאות:
-
אחד על אחד. כאשר כל פריט בכל טבלה מופיע פעם אחת בלבד. לדוגמה, לכל עובד יכול להיות רכב חברה אחד בלבד לשימוש. לקבלת מידע נוסף, ראה יצירת קשרי גומלין של אחד ליחיד.
-
אחד לרבים. כאשר פריט אחד בטבלה אחת יכול להיות קשר גומלין עם פריטים מרובים בטבלה אחרת. לדוגמה, כל הזמנת רכש יכולה לכלול מוצרים מרובים.
-
רבים לרבים. כאשר פריט אחד או יותר בטבלה אחת יכול לכוללים קשר גומלין עם פריט אחד או יותר בטבלה אחרת. לדוגמה, לכל הזמנה יכולים להיות מוצרים מרובים, וכל מוצר יכול להופיע בהזמנות רבות. כדי לקבל מידע נוסף, ראה יצירת קשרי גומלין של רבים לרבים.
קשרי גומלין של אחד לרבים
אחד קשרי הגומלין הנפוצים ביותר בין טבלאות במסדי נתונים מעוצבים היטב הוא קשר הגומלין של אחד לרבים.
'קשרי גומלין' בין טבלאות מסתתננות בדרך כלל על המפתח הראשי באחת מהטבלאות. זכור שהמפתח הראשי הוא מזהה ייחודי (לעתים קרובות מספרי) עבור כל רשומה. כדי להראות שהמידע בשתי טבלאות שונות קשור, בדרך כלל אתה יוצר קשר גומלין באמצעות המפתח הראשי באחת הטבלאות.
בקשר הגומלין המוצג כאן, לדוגמה, לכל אדם בטבלה אנשי קשר יש מזהה, שהוא המפתח הראשי (המצוין על-ידי סמל המפתח שלידו). מזהה זה מופיע גם בשדה 'בעלים' בטבלה Assets. כדי לשלוח דואר אלקטרוני לאדם המשויך לנכס, קבל את הערך מהשדות כתובת דואר אלקטרוני. לשם כך, חפש את הערך בשדה בעלים של הטבלה Asset ולאחר מכן חפש מזהה זה בטבלה אנשי קשר. המספר 1 בקצה אחד של הקו המחבר וסמל ∞ בצד השני מציינים כי זהו קשר גומלין של אחד לרבים, ולכן איש קשר אחד עשוי להיות משויך לנכסים רבים.
עריכת קשר גומלין
אם אתה משנה מסד נתונים קיים או אם יצרת את מסד הנתונים שלך מתבנית, באפשרותך לערוך את קשרי הגומלין הקיימים כדי להתאים לצרכיך.
הערה: אם הטבלאות שברצונך לעבוד איתן נמצאות בשימוש, תחילה עליך לסגור אותן, יחד עם אובייקטים פתוחים שהשתמשו בהם.
-
בחר כלי מסד נתונים > 'קשרי גומלין'.
-
בחר את הקו המחבר שתי טבלאות קשורות.
עצה: אם אינך רואה את קשר הגומלין הרצוי, בכרטיסיה עיצוב,בקבוצה 'קשרי גומלין', בחר כל 'קשרי גומלין'.
-
בכרטיסיה עיצוב, בחר ערוך 'קשרי גומלין'.
טבלה/שאילתה היא טבלת האב מימין (בדוגמה זו, Customers).
טבלה/שאילתה קשורה היא טבלת הצאצא (בדוגמה זו, Orders).
גם אם הטבלאות לא מופיעות בסדר זה בתצוגת 'קשרי גומלין', המיקום שלהן בתיבת הדו-שיח מציין את כיוון הקו המחבר אותן ואת קשר הגומלין. זה חשוב אם, לדוגמה, זהו קשר גומלין של יחיד לרבים, מכיוון שהוא מציין שהטבלה מימין היא הטבלה (טבלת האב) והטבלה מימין היא הרבים (טבלת הצאצא).
-
כדי לשנות את השדות המחברים את הטבלאות, בחר שדה אחר מתחת לכל טבלה המוצגת. בדוגמה זו, השדה מזהה בטבלה Customers מתחבר לשדה מזהה לקוח בטבלה Orders.
-
שנה את האופן Access סינכרון הנתונים שלך בין טבלאות.
אכיפת שלמות הקשרים
כדי למנוע נתונים לא חוקיים ולסנכרן הפניות בין קשרי גומלין בין טבלאות, בחר באפשרות זו.
לדוגמה, נניח שיש לך קשר גומלין של אחד על אחד בין הטבלאות 'עובדים' ו'הטבות עובדים'. אם עובד עוזב את החברה ואתה מסיר אותו מהטבלה Employees, גם רשומת העובד הקשורה בטבלה 'הטבות עובדים' מוסרת.
לעתים לאלץ שלמות הקשרים אינה הגיונית. לדוגמה, נניח שיש לך קשר גומלין של אחד לרבים בין Shippers להזמנות. אתה מוחק שולחים, ו- Shipper זה ממפה להזמנות בטבלה Orders. הזמנות אלה הופכות ליתומים, כלומר שהן עדיין מכילות מזהה של הפנה, אך המזהה אינו חוקי עוד מכיוון שההקלטה שהיא מפנה לה אינה קיימת עוד.
עדכון שדות קשורים בהתאם להירארכיית הקשרים
כדי לוודא שנתונים בשדות קשורים מתעדכנים בכל הטבלאות הקשורות, בחר באפשרות זו.
לדוגמה, נניח שברצונך פשוט לשנות את המזהה של שולחים. הגדרת אפשרות זו מבטיחה שמזהה ה- Shipper יתעדכן – לא רק בטבלת ה- Shipper, אלא גם בכל הטבלאות האחרות המחוברות אליה, הכוללות גם את מזהה ה- Shipper, כגון הטבלה Orders.
מחק רשומות קשורות בהתאם להירארכיית הקשרים
ההחלטה לבחור אפשרות זו תלויה בשאלה אם עליך לשמור רשומות בטבלאות מסוימות למרות שהן עשויים להימחק מטבלאות אחרות.
לדוגמה, נניח שאתה מוחק שולחים. אם אפשרות זו נבחרת, Access מוחקת את כל הרשומות בכל הטבלאות המפנה אל מזהה המשלוח, כולל כל ההזמנות (בטבלה Orders) שנשלחו על-ידי אותו משלח. בחר באפשרות זו רק אם אתה בטוח שברצונך למחוק את היסטוריית ההסדרים שלך.
-
כדי לשנות את קשר הגומלין בין הטבלאות מצירוף פנימי לצירוף אחר, בחר בלחצן סוג צירוף. לקבלת מידע נוסף, ראה יצירת שאילתות עם צירונם החוצה.
מחיקת קשרי גומלין בין טבלאות
הערה: אם הטבלאות שברצונך לעבוד איתן נמצאות בשימוש, תחילה עליך לסגור אותן, יחד עם אובייקטים פתוחים שהשתמשו בהם.
כדי להסיר קשר גומלין בין טבלאות:
-
בחר כלי מסד נתונים > 'קשרי גומלין'.
-
בחר את הקו המחבר בין שתי הטבלאות הקשורות.
עצה: אם אינך רואה את קשר הגומלין הרצוי, בכרטיסיה עיצוב,בקבוצה 'קשרי גומלין', בחר כל 'קשרי גומלין'.
-
בחר את מקש Delete. אם תתבקש לאמת שברצונך למחוק את קשר הגומלין, בחר כן.
הערה: בעת הסרת קשר גומלין, אתה גם מסיר תמיכה בשלמות הקשרים עבור קשר גומלין זה, אם יש. כתוצאה מכך, Access לא ימנע עוד שינויים שהתוצאה היא רשומות מיותמות בצד הרב של קשר גומלין של אחד לרבים.