חורף - תשס " ג 236363- DBMS, שפות שאילתא : SQL ( ג ') 1 שינוי מסד הנתונים - פעולות DDL, DML פעולות ב -SQL: שאילתות שינוי תוכן מסד נתונים ( עדכון, הוספה.

Slides:



Advertisements
Similar presentations
ממיבחניםC שאלות ++.
Advertisements

1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
©Silberschatz, Korth and Sudarshan4.1Database System Concepts סכימה לדוגמא.
טבלאות סמלים נכתב ע"י אלכס קוגן סמסטר חורף, תשס"ח.
אקסס מבוא למערכות מידע.
חורף-תשס"ג DBMS, שפות שאילתא: Datalog1 Datalog תכנות לוגי: תכנות באמצעות נוסחאות לוגיות. Datalog: שפה לתכנות לוגי של מסדי נתונים. פרדיקטים: פונקציות.
מסדי נתונים תשס " ג 1 תכנון סכמות (Design Theory) מסדי נתונים.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
מבוא לשפת C חידות ונקודות חשובות נכתב על-ידי יורי פקלני. © כל הזכויות שמורות לטכניון – מכון טכנולוגי לישראל.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
אביב תשס"הDBMS , PostgreSQL1 PostgreSQL עבודה עם שרת PostgreSQL : PSQL – מפענח שורת פקודה LIBPQ – ספריית C WebDB – ממשק מבוסס Web (לסטודנטים של.
A. Frank File Organization Indexed-Sequential File Introduction Thanks to Tamar Barnes.
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
תרגול חזרה. מבנה האובייקט תאר את מבנה האובייקט כולל מבנה טבלאות הפונקציות הוירטואליות עבור התכנית הבאה struct A { int x; virtual void a() {}; }; struct.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
מבוא למדעי המחשב תרגול מספר 4. בפעם הקודמת... מזהים טיפוסים טווח ייצוג קבועים.
ספריה וירטואלית בטכנולוגית J2EE הטכניון – מכון טכנולוגי לישראל הפקולטה להנדסת חשמל המעבדה למערכות תוכנה עזרן אייל טרבלסי אורדן סמסטר חורף תשס " ד מנחה.
חורף תשס " ג DBMS , שפות שאילתה : SQL ( א ') 1 סכמה SQL: מושגים טבלה, רלציה שורה, רשומה, n- יה עמודה, תכונה, שדה, אטריביוט.
מסדי נתונים תשס " ג 1 More on SQL קורס מסדי נתונים.
Multicycle MIPS תרגול כיתה מס' 13.
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
DBMS , שפות שאילתה: SQL (ב')
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
Multi-Cycle MIPS דוגמאות. דוגמה 1 נתון קטע הקוד הבא: begin:addi $v0, $zero, -1 loop:add $a0, $a0, $a0 addi$v0,$v0,1 bne $a0, $zero, loop הניחו כי בתחילת.
חורף DBMS , שפות שאילתה: SQL 1 SQL questions.
חורף תשס"טDBMS , PostgreSQL1 PostgreSQL עבודה עם שרת PostgreSQL : PSQL – מפענח שורת פקודה LIBPQ – ספריית C WebDB – ממשק מבוסס Web (לסטודנטים של.
הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353)
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
©Silberschatz, Korth and Sudarshan4.1Database System Concepts SQL n מבנה שאילתה n פונקציות צבירה.
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
עקרון ההכלה וההדחה.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
מבוא למדעי המחשב תרגול 3 שעת קבלה : יום שני 11:00-12:00 דוא " ל :
מבוא למדעי המחשב, סמסטר א ', תשע " א תרגול מס ' 1 נושאים  הכרת הקורס  פסאודו - קוד / אלגוריתם 1.
אביב תשס"הDBMS , PostgreSQL1 PostgreSQL עבודה עם שרת PostgreSQL : PSQL – מפענח שורת פקודה LIBPQ – ספריית C WebDB – ממשק מבוסס Web (לסטודנטים של.
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
מבוא למדעי המחשב תרגול מספר 4. בפעם הקודמת... מזהים טיפוסים טווח ייצוג קבועים.
אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 7 ISP דוגמא נוספת.
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
1 SQL/ DML Structured Query Language Data Manipulation Language (DML) is used to query and update data מהדורה 02.
1 SQL: שינוי מסד הנתונים- פעולותDDL, DML פעולות ב-SQL: שאילתות  שינוי תוכן מסד נתונים (עדכון, הוספה של רשומות, וכו'), DML – Data Manipulation Language.
מבנה נתונים ואלגוריתמים ) לשעבר - עיבוד מידע( ד"ר אבי רוזנפלד ד"ר אריאלה ריכרדסון.
File Systems Motivation SQL (Structured Query Language) MapReduce 1 תרגול 1.
אביב תשס"גDBMS , שפות שאילתה: SQL1 סכמה SQL (Structured Query Language) : מושגים טבלה, רלציה שורה, רשומה, n- יה עמודה, תכונה, שדה, אטריביוט.
מבוא למדעי המחשב לתעשייה וניהול הרצאה 12. ספריות.
1 חלק XQuery :IV XML Query. 2 ביבליוגרפיה - DTD 3 ביבליוגרפיה – books.xml TCP/IP Illustrated Stevens W. Addison-Wesley Advanced Programming in.
מבוא למדעי המחשב לתעשייה וניהול הרצאה 6. מפעל השעווה – לולאות  עד עכשיו  טיפלנו בייצור נרות מסוג אחד, במחיר אחיד  למדנו להתמודד עם טיפול במקרים שונים.
מחרוזות – הטיפוס String
© Keren Kalif JDBC קרן כליף.
Object Oriented Programming
Object Oriented Programming
Structured Query Language
Database Management Systems
Database Management Systems
SQL בסיסי – הגדרה אינדוקטיבית
Structured Query Language
עבודה עם נתונים באמצעות ADO.NET
מסדי נתונים מסד נתונים הינו אוסף של טבלאות המכיל לפחות טבלה אחת. כל טבלה הינה אוסף של רשומות (לפחות רשומה בודדת) וכל רשומה מכילה אוסף של שדות ולבסוף.
ניתוח מערכות מידע תכנות ב C#
Based on the lecture notes of Prof. Sagiv
מחסנית ותור Stacks and Queues.
בסיסי נתונים ושפת SQL הרצאה #6
טבלאות מדומות (Views).
Computer Programming תרגול 3 Summer 2016
Engineering Programming A
Presentation transcript:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 1 שינוי מסד הנתונים - פעולות DDL, DML פעולות ב -SQL: שאילתות שינוי תוכן מסד נתונים ( עדכון, הוספה של רשומות, וכו '), DML – Data Manipulation Language) שינוי מבנה מסד נתונים ( יצירה, מחיקה של טבלאות, וכו '), DDL – Data Definition Language

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 2 עדכון – UPDATE מטרה : עדכון ערכים ברשומות קיימות במסד הנתונים. אפשרות ראשונה : השמה של ערכים קבועים בעמודות מסוימות בכל הרשומות. דוגמא : העברת כל הספרים לספרייה מרכזית, והגבלת משך ההשאלה לשבוע ימים. UPDATE Books SET Max_Time = 7, Faculty = ‘ GEN ’ ;

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 3 דוגמא - המשך FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 Books:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 4 FacultyPagesMax_TimeYearBook_NameBook_Id GEN Database Systems 1111 GEN Database Systems 1112 GEN Database Systems 1113 GEN Database And Knowledge2222 GEN Database And Knowledge2223 GEN Electronic Circuits3333 GEN Genes GEN Anatomy5555 דוגמא - תוצאה UPDATE Books SET Max_Time = 7, Faculty = ‘ GEN ’ :

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 5 UPDATE ( המשך...) עדכון חלק מהרשומות : הוספת תנאי WHERE condition דוגמא : הגבלת משך ההשאלה לשבוע ימים לספרים השייכים לספריית מדעי המחשב. UPDATE Books SET Max_Time = 7 WHERE Faculty = ‘CS’;

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 6 דוגמא - המשך FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 Books:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 7 FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 דוגמא - תוצאה UPDATE Books SET Max_Time = 7 WHERE Faculty = ‘CS’:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 8 UPDATE ( המשך...) אפשרות נוספת : השמה של ביטויים. דוגמה : הארכת משך ההשאלה לכל הספרים ביום אחד. UPDATE Books SET Max_Time = Max_Time + 1;

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 9 דוגמא - המשך FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 Books:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 10 דוגמא - תוצאה FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 UPDATE Books SET Max_Time = Max_Time + 1:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 11 UPDATE – שימוש בתת - שאילתות הערך החדש יכול להיות תוצאה של תת - שאילתה דוגמא : לכל ספר יש לעדכן את משך ההשאלה למקסימלי באותה פקולטה. UPDATE Books B SET Max_Time = (SELECT MAX(Max_Time) WHERE Faculty = B.Faculty);

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 12 דוגמא - המשך FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 Books: MAX

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 13 FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 דוגמא – תוצאה UPDATE Books B SET Max_Time = (SELECT MAX(Max_Time) WHERE Faculty = B.Faculty):

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 14 UPDATE – המשך הערות : – כל החישובים בשאילתא מתבצעים, כביכול, על " העתק " זמני של הטבלה שאינו מתעדכן בזמן ביצוע ההוראה. – כלומר, עדכון של רשומה אינו משפיע על החישובים הבאים שמתבצעים עבור הרשומות הבאות.

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 15 הוספה - INSERT מטרה : הוספת רשומות חדשות אפשרות ראשונה : הוספת רשומה אחת נתונה דוגמא : הוספת לקוח לטבלת Customer. INSERT INTO Customer VALUES (78901, ‘Roy Peled’, ‘EE’);

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 16 דוגמה - המשך FacultyCust_NameCust_Id CSMoshe Cohen12345 EEAvi Barak23456 MEDAvi Barak34567 EELior Edri45678 EEMoshe Cohen56789 EEMoshe Cohen67890 Customer:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 17 דוגמא - תוצאה FacultyCust_NameCust_Id CSMoshe Cohen12345 EEAvi Barak23456 MEDAvi Barak34567 EELior Edri45678 EEMoshe Cohen56789 EEMoshe Cohen67890 EERoy Peled78901 INSERT INTO Customer VALUES (78901, ‘Roy Peled’, ‘EE’):

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 18 INSERT – המשך ניתן לאתחל רק חלק מהשדות. דוגמא : INSERT INTO Customer(Cust_Id,Cust_Name) VALUES (78901, ‘Roy Peled’); הערות : – שדות לא מאותחלים (Faculty) יקבלו ערך NULL. – אם בעמודה Faculty אסור שיופיע NULL, ההוראה INSERT אינה חוקית, ולכן היא לא תתבצע.

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 19 דוגמה - המשך FacultyCust_NameCust_Id CSMoshe Cohen12345 EEAvi Barak23456 MEDAvi Barak34567 EELior Edri45678 EEMoshe Cohen56789 EEMoshe Cohen67890 Customer:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 20 דוגמא - תוצאה FacultyCust_NameCust_Id CSMoshe Cohen12345 EEAvi Barak23456 MEDAvi Barak34567 EELior Edri45678 EEMoshe Cohen56789 EEMoshe Cohen67890 Roy Peled78901 INSERT INTO Customer(Cust_Id, Cust_Name) VALUES (78901, ‘Roy Peled’):

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 21 INSERT – שימוש בשאילתות הוספת רשומות המתקבלות כתוצאה של שאילתה. דוגמא : הכנסת כל הלקוחות שהזמינו ספרים לטבלה Readers. INSERT INTO Readers( Id, Name) (SELECT Cust_Id, Cust_Name FROM Customer C WHERE EXIST (SELECT * FROM Qrdered WHERE Cust_Id = C.Cust_Id); הוראה זו חוקית רק אם טבלה Readers קיימת.

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 22 דוגמה - המשך EEMoshe Cohen67890 CSMoshe Cohen12345 EEAvi Barak23456 MEDAvi Barak34567 EELior Edri45678 EEMoshe Cohen56789 FacultyCust_NameCust_Id Customer: SELECT Cust_Id, Cust_Name FROM Customer C WHERE EXIST (SELECT * FROM Qrdered WHERE Cust_Id = C.Cust_Id): 14-Oct-2002 Database Systems Oct-2002Anatomy Oct-2002Database And Knowledge Oct-2002Electronic Circuits45678 Order_DateBook_NameCust_Id Ordered: Moshe Cohen12345 Lior Edri45678 Cust_NameCust_Id Readers:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 23 INSERT מתבצעת על " העתק " זמני של הטבלה. דוגמא : INSERT INTO Readers (SELECT * FROM Readers); הוראה זו לא לא תכנס ללולאה אינסופית אלא רק תכפיל את הטבלה. INSERT – המשך

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 24 תוצאה CSMoshe Cohen12345 EELior Edri45678 Faculty Cust_NameCust_Id Readers: EELior Edri45678 CSMoshe Cohen12345 CSMoshe Cohen12345 EELior Edri45678 FacultyCust_NameCust_Id Readers: INSERT INTO Readers (SELECT * FROM Readers);

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 25 מחיקה – DELETE ההוראה DELETE מוחקת רשומות מתוך הטבלה. בהוראה זו צריך רק להגדיר אלו רשומות רוצים למחוק. דוגמה : מחיקת כל ההזמנות. DELETE FROM Ordered; הטבלה עצמה אינה נמחקת, אך היא נותרת ריקה.

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 26 DELETE – המשך (WHERE) אופציה WHERE מאפשרת לבחור אלו רשומות ימחקו מהטבלה. דוגמה : מחיקת כל ההזמנות של הלקוח בעל מספר מזהה DELETE FROM Ordered WHERE Cust_Id = 12345;

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 27 דוגמה – המשך Order_DateBook_NameCust_Id 14-Oct-2002 Database Systems Oct-2002Anatomy Oct-2002Database And Knowledge Oct-2002Electronic Circuits45678 Order_DateBook_NameCust_Id 24-Oct-2002Anatomy Oct-2002Electronic Circuits45678 Ordered: DELETE FROM Ordered WHERE Cust_Id = 12345;

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 28 DELETE – המשך בתוך התנאי אפשר להשתמש בביטויים בוליאניים יותר מורכבים ובשאילתות. דוגמה : ביטול כל ההזמנות של אנשים שאינם מופיעים בטבלת הלקוחות. DELETE FROM Ordered O WHERE NOT EXIST (SELECT * FROM Customer WHERE Cust_Id = O.Cust_Id);

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 29 דוגמה - המשך Order_DateBook_NameCust_Id 14-Oct-2002 Database Systems Oct-2002Anatomy Oct-2002Database And Knowledge Oct-2002Electronic Circuits Oct-2002Electronic Circuits55555 Ordered: FacultyCust_NameCust_Id CSMoshe Cohen12345 EEAvi Barak23456 MEDAvi Barak34567 EELior Edri45678 EEMoshe Cohen56789 EEMoshe Cohen67890 Customer:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 30 דוגמא - תוצאה Order_DateBook_NameCust_Id 14-Oct-2002 Database Systems Oct-2002Anatomy Oct-2002Database And Knowledge Oct-2002Electronic Circuits45678 Ordered:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 31 שמירה / ביטול של שינויים COMMIT/ROLLBACK שינויים מתבצעים על " העתק " של המסד. ניתן " להתחרט " ולבטל את השינויים האחרונים. COMMIT: העברת כל השינויים מההעתק אל מסד הנתונים ROLLBACK: ביטול כל השינויים מה -COMMIT האחרון ( או מתחילת העבודה עם המסד ). דוגמה : DELETE FROM Ordered; ROLLBACK; במקרים מסוימים מתבצעת פעולת COMMIT באופן אוטומטי ( נראה בהמשך ).

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 32 יצירת טבלה – CREATE TABLE יצירת טבלה ריקה : CREATE TABLE table (column_type [(length)] [NOT NULL],…); יצירת טבלה המכילה תוצאה של שאילתה : CREATE TABLE table AS SELECT …; הפעולה COMMIT מתבצעת אוטומטית לפני ואחרי CREATE TABLE.

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 33 דוגמא CREATE TABLE EXAMPLE (AB VARCHAR(15), CDINTEGER NOT NULL, EFDECIMAL(5), GHDECIMAL(7,2));

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 34 טיפוסים ב - PostgreSQL VARCHAR (n) – מחרוזת BOOLEAN – ערך בוליאני DATE – תאריך INTEGER – מספר שלם DECIMAL [(p,s)] – מספר עם דיוק עשרוני נתון …

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 35 CREATE TABLE – דוגמא דוגמא : יצירת טבלה חדשה בשם CSBooks שמכילה את כל הספרים השייכים לפקולטה ‘CS’. CREATE TABLE CSBooks AS SELECT Book_Id, Book_Name FROM Books WHERE Faculty = ‘CS’;

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 36 דוגמה - המשך FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 Books:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 37 Book_NameBook_Id Database Systems 1111 Database Systems 1112 Database Systems 1113 Database And Knowledge2222 Book_NameBook_Id Database Systems 1111 Database Systems 1112 Database Systems 1113 Database And Knowledge2222 CSBooks: דוגמה - תוצאה

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 38 הסכמה של הטבלה החדשה : – סוגי העמודות נקבעים ע " י השאילתא שבהוראת ה - CREATE. – את שמות העמודות בטבלה החדשה אפשר לשנות : CREATE TABLE – המשך דוגמא : CREATE TABLE CSBooks(Id, Name) AS SELECT Book_Id, Book_Name FROM Books WHERE Faculty = ‘CS’; Database Systems 1111 Database Systems 1112 Database Systems 1113 Database And Knowledge2222 NameId CSBooks:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 39 מחיקת טבלה – DROP TABLE דוגמה : מחיקת הטבלה CSBooks. DROP TABLE CSBooks; שימו לב ! הפקודה DROP TABLE היא בלתי הפיכה, כי COMMIT מתבצע אוטומטית לפניה ואחריה.

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 40 מבטים – VIEWS מוטיבציה : להתייחס לפלט של שאילתה כאל טבלה נפרדת ( בלי ליצור אותה פיזית ). בפועל : השאילתה שמגדירה את המבט נשמרת במסד הנתונים ומופעלת כל פעם מחדש. אינטואיציה : המבט מהווה מעין " חלון " דרכו אפשר להסתכל על חלק ממסד הנתונים. מטרה : הסתרת מידע, פישוט שאילתות...

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 41 מבטים - המשך יצירת מבט : CREATE VIEW view_name AS SELECT…; דוגמא : CREATE VIEW CSBooks AS SELECT Book_Id, Book_Name, Max_Time FROM Books WHERE Faculty = ‘CS’; ב -CSBooks מוסתרות כל העמודות של Books פרט ל - Book_Id, Book_Name, Max_Time וכל השורות פרט לספרים של מדעי מחשב. בשאילתה אסור שיופיע ORDER BY.

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 42 דוגמא – המשך FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 Books: 7 Database Systems Database Systems Database Systems Database And Knowledge2222 Max_TimeBook_NameBook_Id CSBooks

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 43 מבטים – המשך ( שאילתות ) על מבט ניתן לבצע שאילתות ממש כאילו היה טבלה. דוגמה : שליפת כל הספרים של מדעי מחשב שמשך ההשאלה שלהם הוא 7 ימים. SELECT Book_Name FROM CSBooks WHERE Max_Time = 7;

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 44 כל שינוי בטבלה המקורית מייד משפיע על המבט. ניתן לבצע עדכונים (UPDATE) למסד הנתונים דרך המבט, פרט למקרים בהם המבט הוא read-only. מבט הוא read-only אם השאילתה של CREATE VIEW מכילה : –JOIN –GROUP BY – ביטויים ברשימת העמודות דוגמה לעדכון : UPDATE CSBooks SET Max_Time = Max_Time + 1; מבטים – המשך ( עדכון )

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 45 דוגמא – המשך FacultyPagesMax_TimeYearBook_NameBook_Id CS Database Systems 1111 CS Database Systems 1112 CS Database Systems 1113 CS Database And Knowledge2222 EE Database And Knowledge2223 EE Electronic Circuits3333 MED Genes MED Anatomy5555 Books: 8 Database Systems Database Systems Database Systems Database And Knowledge2222 Max_TimeBook_NameBook_Id CSBooks אחרי עדכון Max_Time:

חורף - תשס " ג DBMS, שפות שאילתא : SQL ( ג ') 46 מבטים – המשך ( מחיקה ) מחיקת מבט : DROP VIEW דוגמה : DROP VIEW CSBooks; לטבלה שעליה מבוסס המבט לא קורה כלום.