top of page

מבוא לשפת SQL


שפת sql היא שפה שעובדת עם הנתונים בשרת, המכילים את הנתונים בצורה טבלאית,

היא שפה שנותנת פקודות (שאילתות), אשר על פיהם יסוננו הנתונים האחרים ויבואו הנתונים המבוקשים בהתאם לשאילתה.

היא לא כותבת איך לעשות, כמו שפות אחרות, אלא רק מה לעשות (הצהרה על הנתונים אותם אני צריך לייבא/לעדכן וכדומה).

כל מערכת מידע, שומרת את הנתונים שלה בשרת יעודי, על מנת לנהל את המידע צריך:

ליצור מסד נתונים (אוסף של טבלאות),

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

בכל טבלה יש שדות (עמודות) ורשומות (כל שורה בטבלה נקראת רשומה).

על מנת לשות זאת יש להכניס נתונים לפי פקודות SQL (או בצורה קלה עם ממשק,

בדומה לאקסס, אשר פקודות אלו נעשות אוטומתית מאחורי הקלעים).

כמובן עם שינויים קטנים לפי סוג המסד הנתונים (mySQL, SQLife, SQL server ועוד)

ישנם ראשי תיביות באנגלית (CRUD)'

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

create - ליצור טבלה ולהוסיף נתונים - > INSERT - להכניס נתונים בטבלה. CREATE - ליצור טבלה.

read - קריאת נתונית לפי שאילתה - > SELECT - לקרוא נתונים מטבלה.

update - עדכון רשומות (שורות מסויימות) - > UPDATE - לעדכן נתונים בטבלה.

delete - מחיקת נתונים או טבלה - > DELETE - מחיקת שורות, DROP - מחיקת טבלה.

פקודות נפוצות חובה בכל שאילתה (הנכתבות לפי סדר זה):

SELECT - בחירת עמודה אחת או יותר

FROM - מתוך טבלה אחת או יותר

מכן הפקודות הם אופציונליות לפי הצורך:

WHERE - איפה ש.. (תנאי כלשהו), סינון של שורות.

GROUP BY - קיבוץ שורות זהות

ORDER BY - סידור הנתונים מהסוף להתחלה או הפוך.

לשדה (עמודה) של טבלה יש להגדיר את הדברים הבאים:

Name - שם השדה Type - סוג העמודה (מספר, מחרוזת, תאריך וכדומה). Length - הבלת מספר תוים לשדה (בכל מילוי רשומה)

Default -הגדרת ברירת מחדל של הערך (כלום או ערך דיפולטיבי וכדומה)

Collation - הקידוד של השדה (עדיף להשתמש ברירת מחדל, אלא אכן כן צריך עברית שאז נשנה ל- UTF-8))

בכל טבלת חשוב שייהי מזהה יחודי (מפתח ראשי) והגדרות נוספות לפי צורך:

PRIMARY - לדוגמא ID, זה מספר של רשומה, בדומה לתעודת זהות היחודית לכל אזרח.

AUTO_INCREMENT (בקיצור A_I) - משתמש למפתח ראשי, שבכל הוספת רשומה ערכו יגדל באחד באופן אוטומטי. UNIQUE - לדוגמא שם משתמש אינו מפתח ראשי אך יכולים אנו לקבוע שלא יהיה אותו שם משתמש פעמים.

דוגמה לשאילתה:

SELECT `password` FROM `accounts` WHERE `username`='israel' OR `username`='isrolik'

בשורה זו בחרנו לקרוא נתונים (SELECT) מהשדה סיסמה (password) שבטבלת חשבונות (FROM `accounts). בצענו סינון (WHERE), הרשומות בהם שם היוזר הוא ישראל (`username`='israel) או (OR) ישרוליק (`username`='isrolik').

הערה: שפה זו אינה מבדילה בין אותיות גדולות או קטנות באנגלית,

מקובל לרשום תוכן באותיות קטנות ורק את פקודות SQL, המילות השמורות בשפה לרשום באותיות גדולות.

הגרשיים (' - באק פיק), אינם מוכרחות לתחביר, אלא רק הגרש (', או גרשיים - ") בערכי השמות הוא חובה ('isrolik'), כיון שזה התחביר של טיפוס טקסט מסוג מחרוזת.

כמו כן, בדומה לפקודה or, יש את הפקודה and, אשר מסננת עוד יותר ומציגה רק רשומות שיש בהם גם את הערך הראשון וגם את הערך השני (לדוגמה שם פרטי ושם משפחה מסויימים, בשונה מאו, המציג את השדות שמתקיים בהם אחד מהתנאים, או שם משפחה כזה או שם פרטי כזה ולא משנה הערך השני).

נ.ב.

למתקדמים:

ישנם שלושה אפשרויות של איחוד נתונים של טבלאות, לפי קשרי גומלין בין שני טבלאות,

1. יחיד ליחיד: במקרה זה נבצע איחוד הנתונים של שתי הטבלאות.

2. יחיד לרבים: במקרה זה יחיד הולך לרב, נוסיף נתונים מטבלת היחיד בטבלת הרב.

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

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

מאמרים נבחרים
מאמרים חדשים
ארכיון
חפש לפי תג
הבלוג של ישרוליק
  • Facebook Basic Square
  • Twitter Basic Square
  • Google+ Basic Square

ישרוליק נט

israelik net

גולשים אלייך...

bottom of page