"שפת
שאילתות מובנית" מאפשרת להגדיר
ולבצע מניפולציות על מידע הנמצא
במבנה דמוי-טבלה. טבלאות "מחזיקות"
את המידע עצמו ו-"מראות" (Views) שהם
מבנים דמויי-טבלה, באמצעות שורות
ועמודות, מספקות דרך אלטרנטיבית לגשת
למידע.
להלן
דוגמא המשמשת לשליפת נתונים מטבלה
באמצעות "שפת מניפולציית מידע":
Select * From Customer
Where CustID=3232 |
להלן
דוגמא נוספת:
Select *
From Customer
Where ShipCity =
'Bnei-Brak'
|
שתי
הדוגמאות ישלפו סט של שורות מטבלת ה-"לקוחות",
אבל אם ערכי "קוד לקוח" (CustID) הם חח"ע
(לדוגמא, אם עמודה זו היא מפתח ראשי
בטבלה), אזי דוגמת הקוד הראשון לעולם
לא תשלוף יותר משורה אחת, ואילו
הדוגמא השנייה יכולה להחזיר כל אחת
מהתוצאות הבאות:
-
אף
שורה – אין "לקוחות" ב-"בני-ברק".
-
שורה אחת – יש לקוח אחד בדיוק ב-" בני-ברק".
-
מספר
שורות – יש 2 או יותר לקוחות ב-" בני-ברק".
כפי שאת/ה
רואה, סט של שורות יכול להכיל אף שורה,
שורה אחת או מספר שורות. הדבר החשוב
הוא ש-"שפת שאילתות מובנית"
מאפשרת לציין קריטריונים שיגבילו את
סט תוצאת השאילתא וכן מאפשרת לעדכן
את סט התוצאה, כל זאת בפקודה אחת.
אספקט
נוסף של השפה, הוא ששמות עמודות
שהוגדרו מקודם (לדוגמא, ShipCity) משמשות
לציון המידע הספציפי שנשלף, שונה או
שמשתמשים בו בהשוואות.
ארבעת
הפקודות העיקריות של "שפת
מניפולציית מידע" (DML) הן:
-
Select- שליפת שורות
מטבלה אחת או יותר.
-
Insert –
הוספת שורות לטבלה.
-
Update –
עדכון עמודות בטבלה.
-
Delete –
מחיקת שורות מטבלה.
כל אחת מארבעת
הפקודות יכולה לפעול על טבלאות בסיס
או מראות (Views) למרות שפקודות הוספה,
עדכון ומחיקה דורשות שהמראה (View) יהיה
בעל יכולת עדכון (Updateable), כלומר לא בעל
מאפיין Read-Only.
פקודת
השליפה (Select) יכולה לשלוף
שורות מטבלת בסיס אחת או יותר. לעומת זאת, פקודות הוספה, מחיקה ועדכון יכולות לעדכן
טבלת בסיס אחת בלבד עבור כל פקודה.