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