51
סססס סססססס ססס" ס1 סססס סססס סססססס( Database Systems )

מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

  • View
    260

  • Download
    16

Embed Size (px)

Citation preview

Page 1: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 1

קורס מסדי נתונים( Database Systems)

Page 2: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 2

תירגול

מתרגל: ירון קנזה••Course email: [email protected]•My email: [email protected]•Moderated Newsgroup:

local.course.db.ta

•Students Newsgroup: local.course.db.stud

http://www.cs.huji.ac.il/~db

Page 3: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 3

תרגילי בית

תרגילים10בקורס יינתנו כ-• אחוזים מן הציון הסופי15 – 30משקל התרגילים •חובה להגיש את כל התרגילים • ומספר loginעל כל הגשת תרגיל לכלול: שם, •

סטודנטהגשת תרגילים: •

-2תרגילים בכתב יוגשו לתיבת הקורס ברוס –תרגילי תכנות יוגשו אלקטרונית דרך אתר הקורס–

-2החזרת תרגילים: ברוס •קבלת ציון: אלקטרונית באתר הקורס•

Page 4: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 4

תרגילי בית

ערעורים:•יוגשו בכתב בטופס ערעורים לתיבת הקורס –

-2ברוס טופס ערעורים נמצא באתר הקורס–יוגשו תוך שבוע ממועד החזרת התרגיל הבדוק–

דחיית מועד הגשת תרגיל:•בשל סיבה מוצדקת )מילואים, לידה וכד'(–בצירוף אישורים מתאימים–

Page 5: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 5

ספרות עזר

• Database Management Systems, by Raghu Ramakrishnan

• Principles of Database and Knowledge-Base Systems, Volumes I and II, by Jeffery Ullman

• Oracle 8i: The Complete Reference, by Kevin Loney and George Koch

Page 6: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 6

מודל הישויות והקשרים

Entity Relational Model

Page 7: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 7

המטרה: "התאמת העולם למודל"

ERD Database

RelationsObjectsXML documents

Requirement AnalysisConceptual Database Design

Logical Database Design

Page 8: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 8

מושגי יסוד

Entity )מודל הישויות והקשרים•Relationship Model)

מאפשר לאפיין את העצמים ב"עולם", את –הקשרים בין עצמים ותכונות של עצמים

Entity )דיאגרמת ישויות קשרים•Relationship Diagram)

ייצוג גרפי, בדיאגרמה, של ה"עולם" כפי שהוא –על פי מודל הישויות והקשרים

Page 9: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 9

דוגמה – כיצד נתכנן את המסד?בסיס נתונים של גלריה לאמנות כולל מידע על אמנים •

שעבודותיהם היו או נמצאות בגלריה )שם, כתובת, שנת לידה, סגנון אמנותי(.

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

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

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

במערכת נשמר מידע על לקוחות )שם, כתובת, יצירות •שקנו, אמנים מועדפים וכו'(.

בקניית יצירת אמנות נשמר במערכת מידע על תאריך •הקניה והמחיר שבו נמכרה היצירה.

Page 10: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 10

מושגי יסוד – המשך

( – עצם במערכת, לדוגמה האמן entity )ישות•וינסנט ואן גוך, היצירה משמר הלילה וכו'

( – entity set )טיפוס ישויות או קבוצת ישויות•הכללה של כל הישויות מסוג מסויים, לדוגמה

אמנים, יצירות, לקוחות( – קשר בין שתי ישויות או יותר, relationship )קשר•

משמר הלילהיצר אתלדוגמה רמברנדט ( relationship set )טיפוס קשרים או קבוצת קשרים•

הכללה של כל הקשרים מסוג מסויים, לדוגמה יצר את )בין אמן ליצירה(, קנה את )בין לקוח ליצירה(

Page 11: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 11

מושגי יסוד – המשך

( – פריט מידע המתאר ישות attribute )תכונה•או קשר, לדוגמה שנת לידה היא תכונה של

אמן לכל הישויות בקבוצת ישויות יש אותן תכונות )פרט –

בהמשך(ISAל-לכל קבוצת ישויות יש מפתח )יוגדר עוד מעט(–(domainלתכונה ניתן לשייך תחום )–תכונה מכילה פריט מידע יחיד ולא רשימה של –

פריטי מידע

Page 12: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 12

ERDבדיאגרמת

קבוצת ישויות מיוצגת בעזרת מלבן•

קבוצת קשרים מיוצגת בעזרת מעויין•

תכונה מיוצגת בעזרת אליפסה•

אמן

יצר את

יצירהאמן יצר את

שם יצירה שם אמן מספר קטלוגימס זהות

כיצד מיוצגת ישות בדיאגרמה?כיצד מיוצג קשר?

Page 13: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 13

של מי התכונה הזאת?

בקורס באוניברסיטה שומרים מידע על •סטודנטים ועל תרגילי בית שהסטודנטים

הגישו:

תרגילסטודנט הגשה

נושא שם מספר תרגילמס זהות

ציון

?? ?

כיצד נייצג ציוני תרגילים?

כיצד יבוטא במודל קשר הגשה?

האם יתכן שתהיה סטודנטית שלא הגישה אף תרגיל?

Page 14: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 14

קבוצת קשרים רקורסיבית

מותר שבקשר ישתתפו שתי ישויות )או •יותר( מאותו טיפוס

במקרה זה מוסיפים לקבוצת הקשרים •בחיבור לטיפוסי הישויות את תיאור תפקיד

(role:הישות בהשתתפות )

עובד שם עובדמנהל של

מספר זהות

מנהל

מנוהל

Page 15: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 15

-ריתnקבוצת קשרים

עד כה ראינו קבוצות קשרים בינאריות•ניתן שבקשר ישתתפו שתי ישויות, שלוש •

ישויותnישויות, ארבע ישויות, ...,

קורסמרצה לימד

שם קורס שם מרצה מספר קטלוגימס זהות

שם מוסדמוסד

Page 16: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 16

קבוצת קשרים

פורמלית קבוצת קשרים תהיה•{(e1, …, en) | e1E1, …, enEn}

For E1, …, En entity sets

הישויות המשתתפות בקשר השייך לקבוצת •קשרים מזהות את הקשר בקבוצה באופן

ייחודי

Page 17: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 17

האם השניים הבאים שקולים?

קורסמרצה לימד

שם קורס שם מרצה מספר קטלוגימס זהות

שם מוסדמוסד

קורסמרצה

לימד ב

שם קורס שם מרצה מספר קטלוגימס זהות

מוסד

שם מוסד

לימד את

ניתן ב

Page 18: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 18

רוצים לשמור באילו שנים בוצעה ההוראה?

קורסמרצה לימד

שם קורס שם מרצה מספר קטלוגימס זהות

מוסד

שם מוסד

שנים

?

Page 19: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 19

(constraintsאילוצים )

( של קבוצת ישויות הוא קבוצה key )מפתח• של תכונות כך שהערכים בתכונות אלו מינימלית

מזהים באופן ייחודי את המופעים של קבוצת הישויות

אחד מפתח מועמדיתכן שיהיה קיים יותר מ•(candidate keyלטיפוס ישויות )

אחד מן המפתחות המועמדים נבחר להיות •( של קבוצת הישויותprimary key )המפתח הראשי

המפתח הראשי מסומן על ידי קו תחתי בתכונותיו•?SQLהאם יש דמיון/שוני ביחס למפתח ראשי ב-

Page 20: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 20

דוגמא

חייל

מספר אישי

מספר זהות

שם בנק

מספר חשבון בנק

חייל

מספר אישי

מספר זהות

שם בנק

מספר חשבון בנק

חייל

מספר אישי

מספר זהות

שם בנק

מספר חשבון בנק

1

2

3

Page 21: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 21

אילוצים

(key constraintsאילוצי מפתח )•אילוץ על השתתפות קבוצת ישויות בקבוצת –

קשריםכשאין אילוץ, ישות עשויה להשתתף במספר –

קשרים מקבוצת הקשרים לכל היותרהאילוץ מחייב ישות להשתתף ב–

קשר אחד מטיפוס הישויותסימון בעזרת הוספת חץ לכיוון המעויין–

Page 22: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 22

(one-to-manyיחיד לרבים )

יצירהאמן יצר את

שם יצירה שם אמן מספר קטלוגימס זהות

- אמן קשור להרבה יצירות- יצירה קשורה לאמן יחיד

יצירה יצר אמן

Page 23: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 23

(many-to-manyרבים לרבים )

יצירהקבוצה שייכת ל

שם יצירה תיאור מספר קטלוגישם קבוצה

קבוצה יכולה להכיל- כמה יצירות

יצירה יכולה להיות - קשורה למספר קבוצות

יצירה שייכת קבוצה

Page 24: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 24

(one-to-oneיחיד ליחיד )

גבריםנשים נישואין

שם שם מספר זהותמס זהות

- גבר קשור לאשה יחידה- אשה קשורה לגבר יחיד

גברים נישואין נשים

Page 25: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 25

אילוצי מפתח

קונהמכונית מכירה

חברה

מודל מספר זהותמס רכב

מוכר

מספר זהות

שנת ייצור

מוכר עשוי למכור כמה מכוניות, קונה עשוי לקנות הנחות:כמה מכוניות, מכונית נמכרת פעם אחת בלבד

?? ?

Page 26: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 26

אילוצי השתתפות

( participation constraintsאילוצי השתתפות )•אילוץ על השתתפות קבוצת ישויות בקבוצת –

קשריםכשאין אילוץ, ישות עשויה לא להשתתף באף –

קשר מקבוצת הקשרים קשר לפחותהאילוץ מחייב ישות להשתתף ב–

אחד מטיפוס הישויותסימון בעזרת הדגשת הקו המחבר את המלבן –

למעויין

Page 27: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 27

אילוצי השתתפות

יצירהאמן יצר את

שם יצירה שם אמן מספר קטלוגימס זהות

- אמן לא חייב להיות קשור ליצירה- יצירה חייבת להיות קשורה לאמן

יצירה יצר אמן

Page 28: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 28

השתתפות חלקית והשתתפות מלאה

יצירהאמן יצר את

שם יצירה שם אמן מספר קטלוגימס זהות

השתתפות מלאה)total participation(

השתתפות חלקית)partial participation(

ניתן לשלב אילוצי השתתפות עם אילוצי מפתחניתן לשלב אילוצי השתתפות עם אילוצי מפתח

Page 29: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 29

מערכת המידע של הגלריה

כעת יש לנו את הכלים לייצר דיאגרמת •ישויות קשרים לייצוג המידע הנדרש עבור

גלריית האמנותחשוב שבמערכת יהיה ייצוג לאילוצים •

הנדרשים

Page 30: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 30

טיפוסי ישויות חלשים

( הם טיפוסי weak entity sets )טיפוסי ישויות חלשים•ישויות שאין להם מפתח המורכב מהתכונות שלהם

בלבד identifying )תלות זיהוילטיפוס ישויות חלש יש •

relationship set הבעלים המזהה( בטיפוס ישויות שהוא (identifying ownerשל הטיפוס החלש )

לטיפוס הישויות החלש השתתפות מלאה בתלות הזיהוי•סימון טיפוס הישויות החלש בעזרת הדגשת המלבן•סימון תלות הזיהוי בעזרת הדגשת המעויין•

Page 31: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 31

דוגמה

מחלקה

מספר מחלקה

פלוגה

שייכת ל

אות פלוגה

מחלקה

מספר מחלקה

פלוגה

שייכת ל

אות פלוגה

מחלקה

מספר מחלקה

גדוד

מספר גדודשייכת ל

מהם המפתחותהראשיים של

קבוצות הישויות?

מהם המפתחותהראשיים של

קבוצות הישויות?

Page 32: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 32

דוגמאות נוספות

קו נסיעה

ביצוע

מספר קו

נסיעה

שעה

ספר

מופע של

מספר קטלוגי

עותק

מספר עותקתאריך

מספר אוטובוס

כותרת

השאלה

Page 33: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 33

ISAהיררכית

מגדירים היררכיה בין קבוצות ISAקשרי •ישויות באופן שיוצר ירושה

(specializingירושה על ידי הפרדה )–(generalizingירושה על ידי הכללה )–

בעזרת משולש שבתוכו ISAסימון קשרי •ISAהמילה

Page 34: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 34

דוגמה

מספר קטלוגירהיטים

שידות

מספר מגירות

שולחנות

גובה

כסאות

צבע ריפוד

מחיר

ISA

מהם המפתחותהראשיים של

קבוצות הישויות?

מהם המפתחותהראשיים של

קבוצות הישויות?

Page 35: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 35

ISAתכונות של קשרי

לרוב, מניחים שאין חפיפה בין קבוצות •ISAהישויות המוכללות בקשר ה-

לדוגמא, האם יש כסא שהוא גם שולחן?–

לרוב, מניחים שכל ישות מקבוצת הישויות •המכלילה שייכת גם לפחות לאחת

ISAמקבוצות הישויות שמוכללות בקשר ה-לדוגמא, האם יש רהיט שאינו כסא, אינו שולחן –

ואינו שידה?

Page 36: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 36

ISAשימוש בקשרי

נשתמש בהכללה של קבוצות ישויות•על מנת לייצג קבוצות ישויות שחלק 1.

מתכונותיהן, כולל המפתח הראשי, זהות וחלק שונות

על מנת לייצג קבוצות ישויות שזהות 2.בתכונותיהן אך שונות בהשתתפותן בקבוצות

הקשרים

Page 37: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 37

דוגמה

אנשים נישואין

שם מספר זהות

הורות

הורה

ילד

אישה

איש

מה הבעיה בייצוג הזה?

Page 38: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 38

המשך דוגמה

אנשים

נישואין

שם מספר זהות

אמהות

נשים גברים

ISAאבהות

Page 39: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 39

דוגמהלאחסון • נתונים בסיס מנהלים מחקר במסגרת

ידי על שאלונים ממילוי המתקבלים נתונים נחקרים המשתתפים במחקר

על • ושומרים קבועה, היא הנחקרים קבוצת הנחקרים פרטים אישיים שונים

אולם • השאלונים, על עונים המשתתפים כל לא נחקר עשוי לענות על כמה שאלונים שונים

ניתן • שאלה כל ועל שאלות מספר שאלון בכל לענות או על ידי בחירה מתוך מספר תשובות נתון

או על ידי דירוג מטווח נתוןבמערכת נשמר גם המידע על השאלונים עצמם, •

המבנה שלהם, השאלות בשאלונים השונים וכו'

Page 40: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 40

יצירת בסיס נתונים עבור המחקר

יוצרים דיאגרמת ישויות קשרים•מוסיפים אילוצים כנדרש•ממירים את הדיאגרמה לטבלאות•

כיצד ממירים דיאגרמה לטבלאות?

Page 41: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 41

המרת קבוצות ישויות לטבלאות

כל תכונה של קבוצת הישויות מתורגמת •לתכונה בטבלה

person

name id

address

person (id, name, address)

CREATE TABLE person(id CHAR(11),name CHAR(30),address CHAR(40),PRIMARY KEY (id) )

Page 42: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 42

המרת קבוצות קשרים לטבלאות

הטבלה עבור קבוצת קשרים מכילה את תכונות •המפתחות הראשים של כל קבוצות הישויות

שמשתתפות בקבוצת הקשרים, כל מפתח עם (foreign key constraintאילוץ מפתח זר )

הטבלה מכילה את התכונות של קבוצת •הקשרים עצמה

המפתח הראשי נוצר מתכונות המפתח של •קבוצות הישויות שמשתתפות בקבוצת הקשרים

Page 43: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 43

carowns

color

model plate

since

person

name id

address

owns (id, plate, since)

CREATE TABLE owns( id CHAR(11),plate CHAR(10),since DATE,PRIMARY KEY (id, plate),FOREIGN KEY (id) REFERENCES person,FOREIGN KEY (plate) REFERENCES car )

Page 44: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 44

carowns

color

model plate

since

person

name id

address

owns (id, plate, since)

CREATE TABLE owns( id CHAR(11) NOT NULL,plate CHAR(10),since DATE,PRIMARY KEY (plate),FOREIGN KEY (id) REFERENCES person,FOREIGN KEY (plate) REFERENCES car )

FOREIGN KEY (plate) REFERENCES owns מפתח זר carבנוסף, נדרש בטבלה מדוע?

FOREIGN KEY (plate) REFERENCES owns מפתח זר carבנוסף, נדרש בטבלה מדוע?

Page 45: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 45

carowns

color

model plate

since

person

name id

address

!ownsאפשרות ב', בלא טבלת

CREATE TABLE car( model CHAR(20),plate CHAR(10) PRIMARY KEY,color CHAR(10),id CHAR(11) NOT NULL,since DATE NOT NULL,PRIMARY KEY (plate),FOREIGN KEY (id) REFERENCES person )

מחברים את טבלת קבוצת הקשרים לטבלת קבוצת הישויות,מדוע זה ניתן?

מחברים את טבלת קבוצת הקשרים לטבלת קבוצת הישויות,מדוע זה ניתן?

Page 46: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 46

referencebooks

title bno

publisher

reference (in_bno, to_bno)

CREATE TABLE reference(in_bno CHAR(20),to_bno CHAR(20),PRIMARY KEY (in_bno, to_bno),FOREIGN KEY (in_bno) REFERENCES books(bno)FOREIGN KEY (to_bno) REFERENCES books(bno)

)

to

in

Page 47: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 47

המרת קבוצת ישויות חלשה

המפתח של קבוצת הישויות החלשה כולל •את המפתח הראשי של קבוצת הישויות

שבה היא תלויהקבוצת הישויות החלשה תמיד משתתפת •

השתתפות מלאה בתלות הזיהוי ועם אילוץ מפתח יחיד לרבים

ישנה "תלות קיום" של קבוצת הישויות •החלשה בקבוצת הישויות שבה היא תלויה

בתלות הזיהוי

Page 48: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 48

copiesexists

limitationscno

books

title bno

publisher

copy (bno, cno, limitations)

CREATE TABLE copies( bno CHAR(20),cno INTEGER,limitations CHAR(20),PRIMARY KEY (bno, cno),FOREIGN KEY (bno) REFERENCES books

ON DELETE CASCADE )

כיצד באה לידי ביטוי תלות הקיום?כיצד באה לידי ביטוי תלות הקיום?

Page 49: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 49

המרה של קבוצות ישויות ISAמוכללות בקשרי

ישנם שתי אלטרנטיבות:•המרה רגילה של קבוצת הישויות המכלילה והמרה –

של קבוצות הישויות המוכללות כאילו היו קבוצות ישויות חלשות )טבלת קבוצת ישויות מוכללת תכלול

את המפתח הראשי של קבוצת הישויות המכלילה(המרה רק של קבוצות הישויות המוכללות –

לטבלאות, כאשר הטבלה של קבוצת ישויות מוכללת כוללת את כל תכונות קבוצת הישויות

המכלילה אותה

Page 50: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 50

softwarecompany cat_no

free_software purchased_software

ISA

support_infopricesite

Page 51: מסדי נתונים תשס " ג 1 קורס מסדי נתונים (Database Systems)

מסדי נתונים תשס"ג 51

Option 1Option 1

software(cat_no, company)free_software(cat_no, site)purchased_software(cat_no, price, support_info)

Option 2Option 2

free_software(cat_no, company, site)purchased_software(cat_no, company, price, support_info)