Presentation is loading. Please wait.

Presentation is loading. Please wait.

בסיסי נתונים ושפת SQL הרצאה #4

Similar presentations


Presentation on theme: "בסיסי נתונים ושפת SQL הרצאה #4"— Presentation transcript:

1 בסיסי נתונים ושפת SQL הרצאה #4
אורן דבוסקין

2 מפגש #4 חזרה משיעור קודם – פקודת Select המשך - פקודת SQL select
המודל הטבלאי תרגול ב SQL Server

3 דרישת שלום מ Contador

4 ומסלול הרכיבה

5 שאילתת SQL - מבנה בסיסי פקודת ה - SELECT : שאילתה לשליפת מידע מטבלה
FROM [ טבלאות ] WHERE [ תנאי ] [ אפשרויות נוספות : order by, group by, having… ]

6 בחירת עמודות SELECT [distinct] [ * | columns [alias] ] FROM [ טבלאות ]
WHERE [ תנאי ] [ אפשרויות נוספות : order by, group by, having… ] distinct רשימת פריטים ייחודיים * בחירת כל העמודות alias שינוי שם העמודה

7 תנאי SELECT [ עמודות ] FROM [ טבלאות ] WHERE [ תנאי ]
[ אפשרויות נוספות : order by, group by, having… ] תנאי לוגי כבכל שפת תכנות. מילים מיוחדות : not, between, or, and, is null, is not null, like, in השוואות: <>, >, < , >=, <= פונקציות , לדוגמא: now()

8 פונקציות סקלר - דוגמא SELECT [ עמודות ] FROM [ טבלאות ]
WHERE upper(city) = ‘TEL-AVIV’

9 פונקציות קבוצה - דוגמא SELECT count(*) FROM [ טבלאות ]
WHERE upper(city) = ‘TEL-AVIV’

10 סקירת פונקציות עזרה של MS-SQL. W3Schools:
בעברית:

11 מיון SELECT [ עמודות ] FROM [ עמודות ] WHERE [ תנאי ]
ORDER BY [ columns [asc|desc] ] מיון לפי עמודות בסדר עולה, יורד ברירת מחדל : מיון בסדר עולה

12 מיון - דוגמא SELECT [ עמודות ] FROM [ עמודות ] WHERE [ תנאי ]
ORDER BY last_name desc, first_name

13 Aggregation SELECT [ עמודות ] FROM [ עמודות ] WHERE [ תנאי ]
GROUP BY [ columns ] קיבוץ נתונים לפי עמודות

14 Aggregation - דוגמא SELECT [ עמודות ] FROM [ עמודות ] WHERE [ תנאי ]
GROUP BY city

15 Aggregation SELECT [ עמודות ] FROM [ עמודות ] WHERE [ תנאי ]
GROUP BY [ columns ] HAVING [ condition ] הפעלת תנאי על הקבוצה

16 Aggregation - דוגמא SELECT [ עמודות ] FROM [ עמודות ] WHERE [ תנאי ]
GROUP BY city HAVING count(*) > 1

17 הכל ביחד SELECT * FROM users WHERE birthdate between ‘1/1/1973’
and ‘1/1/1983’ ORDER BY birthdate DESC

18 שלבים בעיצוב בסיס נתונים
בניית המבנה התפישתי: הייצוג הלוגי של בסיס הנתונים. לרוב באמצעות תרשים. בניית המבנה הלוגי: תרגום המבנה הלוגי להגדרות עבור סכמת DBMS. המבנה הפיזי: פריסת הטבלאות, אופן שמירת בסיס הנתונים.

19 המודל התפישתי תאור הישויות/אובייקטים בבסיס הנתונים
תאור הקשרים בין האובייקטים מתואר בתרשים ERD : Entity Relationship Diagram תרשים ישויות קשרים

20 ישות Entity אובייקט במודל שקיים במציאות, והוא בעל משמעות (טבלה) לדוגמא: סטודנט, ציונים, מרצים, כיתות לימוד ישות חזקה / חלשה: ישות עם קיום עצמאי / בעלת תלות בישות אחרת. מופע Instance: פריט מידע בישות (שורה בטבלה).

21 תכונה Attribute מאפיין של הישות (שדה בטבלה). כל תכונה מוגדרת על ידי:
טיפוס נתונים Datatype: סוג הנתון (מספר, תאריך, מחרוזת וכו') מרחב ערכים Domain: מרחב ערכים חוקיים לתכונה (טווח מספרים, האם חובה?) ערך Value: פריט המידע הקיים בתכונה ברגע נתון.

22 מפתח Key מזהה עבור הישות: תכונה אחת או יותר המהווה זיהוי חד-ערכי למופע ביישות. מפתח ראשי Primary Key: קבוצת התכונות המהוות זיהוי חד-ערכי למופע בישות. מפתח זר/חיצוני Foreign key: תכונה/קבוצת תכונות בישות המהווה מפתח ראשי לישות אחרת.

23 תאור בתרשים Entity Name Attribute (PK) Attribute

24 תרשים - דוגמא users user_id user_name birthday hometown

25 קשרים Relationship יחס בעל משמעות בין ישויות שונות.
פונקציית / קרדינליות הקשר: דרגת היחס בין הישויות 1:1 קשר חד-חד ערכי (אחד לאחד) 1:N קשר חד-רב ערכי (אחד לרבים) M:N קשר רב-רב ערכי (רבים לרבים)

26 קשרים - דוגמאות טבלת עובדים – פרטי חשבון טבלת מחלקות – עובדים
טבלת עובדים – פרוייקטים דוגמאות נוספות...

27 תרשים ERD 1:1 1:N N:M

28 מפתחות ראשיים/זרים? 1:1 1:N N:M האם יש לנו ישות ללא מפתח ראשי?

29 SQL Web Admin ממשק ניהול Web עבור SQL-Server TOAD: כלי נוספים:
TOAD: כלי נוספים:

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

31 טבלת החברים uid bigint NOT NULL display_name varchar(50) NULL
Type Allow null? uid bigint NOT NULL display_name varchar(50) NULL alternate_name username password birthdate date gender interested_in relationship picture_link friends_count int שם טבלה: user

32 דגשים – תרגילי בית דרישת קדם למבחן מסכם: הגשה של 50% מהתרגילים
סימולציית ציונים בקורס:

33 שיעור הבא המשך המודל התפישתי. המודל הטבלאי.


Download ppt "בסיסי נתונים ושפת SQL הרצאה #4"

Similar presentations


Ads by Google