PracticU

יצירת מסד נתונים ב-phpMyAdmin

בלי כתוביותעם כתוביות
PracticU › קורס NodeJS › יצירת מסד נתונים ב-phpMyAdmin
מילון מושגים:
מסד נתונים - אוסף מאורגן של נתונים המאוחסן כך שאפשר לשמור, לחפש, לעדכן ולשלוף אותו ביעילות, לרוב באמצעות שפת שאילתות.
טבלה - מבנה במסד נתונים שמאחסן נתונים בשורות ועמודות. כל שורה היא רשומה וכל עמודה היא שדה.
עמודה - שדה בטבלת מסד נתונים שמחזיק ערך מסוג מסוים עבור כל שורה, למשל שם או תאריך.
מפתח ראשי - עמודה או צירוף עמודות שמזהים באופן ייחודי כל שורה בטבלת מסד נתונים.
אינדקס - מבנה במסד נתונים שמאיץ חיפוש ושליפה. גם מספר המציין מיקום של איבר במערך.
UTF-8 - שיטת קידוד נפוצה של Unicode, שמייצגת כל תו במספר משתנה של בתים ותואמת ל-ASCII.
שאילתה - בקשה למסד נתונים לשלוף, להוסיף, לעדכן או למחוק נתונים, לרוב בשפת SQL.
מפתח זר - עמודה בטבלה שמפנה למפתח הראשי בטבלה אחרת, ובכך יוצרת קשר בין הטבלאות.

יצירת מסד נתונים ב-phpMyAdmin
השיעור מראה איך בונים ב-phpMyAdmin מסד נתונים של חנות ספרים, עם שתי טבלאות מקושרות: סופרים וספרים. הוא מסביר איך מגדירים סוג עמודה, מפתח ראשי ואינדקס.
המסד והטבלה הראשונה
1. מסד חדש: יוצרים מסד בשם bookstore עם הקידוד ברירת המחדל UTF-8 General CI. לפי השיעור, המשמעות היא שהשאילתות לא רגישות לאותיות גדולות וקטנות.
2. עמודות הסופרים: מזהה סופר מסוג INT עם מספור אוטומטי והוא המפתח הראשי, ושם פרטי, שם משפחה ואימייל מסוג VARCHAR.
3. אורך: VARCHAR מגביל את מספר התווים המקסימלי. בשיעור נבחרו 50 לשם הפרטי ו-70 לשם המשפחה ולאימייל.
הטבלה השנייה
1. עמודות הספרים: מזהה ספר שהוא מפתח ראשי עם מספור אוטומטי, מזהה סופר מסוג INT שמוגדר כאינדקס, שם הספר (VARCHAR), מחיר (DECIMAL) ומספר עמודים (INT).
2. מחיר: DECIMAL מיועד לכספים. בהגדרה הראשונית לא היו ספרות אחרי הנקודה העשרונית, והמחיר נשמר בלי השבר, ולכן ההגדרה שונתה לשתי ספרות.
הקשר בין הטבלאות
1. מפתח זר: בעזרת תרשים הטבלאות יוצרים קשר בין מזהה הסופר בטבלת הספרים לבין המפתח הראשי בטבלת הסופרים.
2. מחיקה ועדכון: השיעור בחר RESTRICT לשני הכיוונים, כך שלא ניתן למחוק סופר שיש לו ספרים, או לשנות אותו, בלי לטפל קודם בספרים.
שימו לב
1. ערך חסר: הדאטאבייס לא יכניס ספר שמפנה לסופר שלא קיים בטבלה.
עכשיו אפשר לבנות מסד עם טבלאות מקושרות, ולהכניס בו סופרים וספרים.
השיעור הבא בקורס: יבוא ויצוא מסד נתונים ב-phpMyAdmin

פרקי ההרצאה: יצירת מסד נתונים ב-phpMyAdmin

  1. 00:00

    הפעלת Apache ו-MySQL בלוח הבקרה

  2. 00:41

    יצירת דאטאבייס חנות ספרים

  3. 01:59

    יצירת טבלת סופרים והגדרת עמודות

  4. 02:37

    מפתח ראשי עם Auto-Increment

  5. 04:36

    טבלת ספרים והעמודות שלה

  6. 05:35

    מפתח זר בטבלת הספרים

  7. 07:09

    הגדרת קשר בין הטבלאות בתרשים

  8. 08:07

    בחירת המפתח הזר ליצירת הקשר

תמלול ההרצאה: יצירת מסד נתונים ב-phpMyAdmin

הטקסט המלא של הדקות הראשונות בהרצאה «יצירת מסד נתונים ב-phpMyAdmin» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

    אז בואו נראה איך אנחנו יכולים לבנות דייטאבייס משלנו בתוך MySQL. נריץ את סאמפ קונטרול, נדליק את הפאצ'י, נתעלם מהשגיאה הזאת, נדליק את MySQL, נראה שיש לנו פה צבע ירוק וניתן לו רגע לסיים ונלחץ על אדמין ואז אנחנו רואים שאנחנו בתוך

  2. 00:34

    MySQL פאנל ואנחנו יכולים לסגור כי הוא נמצא לנו כאן אם אנחנו רוצים להגיע אליו אז הוא פה באייקונים של ה-Tray. אז עכשיו מה שאנחנו רוצים לעשות זה לגשת לדאטאבייסס ולבנות איזשהו דאטאבייס חדש לדוגמה בוקסטור איזושהי חנות ספרים שאנחנו יוצרים יש לנו כאן בעצם איפה זה יש לנו כאן את השיטת, שיטת הכידוד של הדאטאבייס, האם

  3. 01:21

    הוא תומך עברית, כן, לא וכדומה. אז אנחנו רואים שב-Default הוא נמצא על UTF-8 General CI, CI זה Case In Sensitive, זאת אומרת ששפת SQL עצמה והדאטאבייס עצמו לא יהיה אותיות דלות, אותיות קטנות, כלומר רגיש לאותיות דלות או אותיות קטנות,

  4. 01:44

    אז זה נראה בסדר להשאיר את זה ככה, UTF-8 זה גם כידוד שהוא Unicode ויש לנו גם את ה-Case Insensitive, זה מה שאנחנו רוצים, בואו נעשה Create. ואז, מה הטבלאות? הטבלה הראשונה, טבלת סופרים.

  5. 02:04

    כמה עמודות אנחנו רוצים בטבלת הסופרים? הוא מציע לנו 4, אנחנו יכולים לשנות את זה, והאמת נשאיר 4 כמו שהיה בסכמה שעבדנו איתה. בואו נעשה Go, והנה יש לנו פה את הסידור של העמודות.

  6. 02:19

    העמודה הראשונה הייתה Author ID, אנחנו רוצים שהאוטו ריידי יהיה אינט שזה מספר שלם ואנחנו רוצים שבואו נלך פה טיפה ימינה האמת אולי נעשה קונטרול גלגלת בשביל שזה יהיה קצת יותר קטן.

  7. 02:41

    נחזיר את זה אנחנו רוצים שזה יהיה אוטו אינקרמנט AI בואו נסמן אוטו אינקרמנט ואוטומטית הוא מציע לנו שזה יהיה פריימרי קי זה בסדר אז כאן אנחנו רואים שהאוטו ריידי הוא מפתח ראשי, פריימרי, והוא מקודם אוטומטית כאשר מוסיפים רשומות, זה ה-Auto-Increment.

  8. 03:11

    העמודה הבאה של הסופרים הייתה First Name. First Name אנחנו לא רוצים אינטג'ר, אנחנו רוצים VAR CHAR. VAR CHAR זה VARIANT CHARACTER, כלומר מחרוזת בגודל משתנה.

  9. 03:23

    פה אנחנו נותנים מה מקסימום תווים שאנחנו מאשרים. פחות מזה מותר, יותר מזה אסור יהיה להכניס. last name שוב פעם נבחר varchar 50 בוא נניח אפילו last name 70 נלך על זה ויש לנו לבסוף אימייל ובואו נגיד שהוא varchar וגם כן 70 אז הנה יש לנו כרגע את הטבלה עצמה שיצרנו הגדרנו פה את המפתח הגדרנו שהוא auto increment ובואו נעשה save יש לנו טבלה ראשונה

  10. 04:04

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

  11. 04:26

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

  12. 04:38

    בטבלת הספרים היו חמש עמודות לפי הסכמה שדיברנו עליה בסרטונים הקודמים. בואו נלך לגו ונתחיל להכניס את העמודות. קודם כל יש לנו כאן את ה-Book ID, אינטג'ר, פריימרי קי, אנחנו יכולים פה לבחור את הפריימרי ונגיד לו כן, זה פריימרי קי ונגדיר שהוא Auto-Increment, גדל בצורה אוטומטית.

  13. 05:10

    לאחר מכן היה לנו את ה-Author ID, אנחנו לא חייבים את זה כמובן לפי הסדר הזה, אבל זה מה שהיה בסכמה, נהוג בעצם שהמפתחות הזרים יהיו מוגדרים מיד אחרי המפתחות הראשיים.

  14. 05:26

    autoid זה גם היה אינטג'ר, אבל הוא לא פריימרי קי והוא לא autoincrement. זה מידע שאנחנו צריכים להכניס שמייצג איזה סופר הספר הזה נכתב על ידו.

  15. 05:42

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

  16. 05:59

    בואו נבצע אוקיי ולאחר מכן אנחנו רוצים להגדיר את הbook name זה יהיה וורצ'אר בואו ניתן לו 100. לאחר מכן אנחנו רוצים את הפרייס פרייס זה לא אינטג'ר כי אינטג'ר הוא מספר שלם פרייס יכול להיות דצימל לדוגמה עבור כספים.

  17. 06:25

    יש מסדי נתונים אחרים שמגדירים את הכספים כמשתנה מסוג money אבל decimal זה מיועד עבור כספים בהקשר הזה ובואו ניגש לפייג'ז זה ההגדרה האחרונה כמה דפים היו לנו וזה כן אינטג'ר אז יש לנו פה את כל ההגדרות של הטבלה בואו נעשה לה סייב אחרי ששמרנו את הטבלה הנה אנחנו רואים שהספרים נמצאים כאן והם כמובן ריקים לגמרי.

  18. 07:04

    שימו לב שפה יש לנו מפתח זר האפור הזה. אחרי שעשינו את זה אנחנו רוצים להגדיר את ה-relationship ביניהם, ה-relationship בין עמודות ה-auto-riding.

  19. 07:19

    אז יש לנו כל מיני טכניקות להגדיר relationships. בואו נחפש כאן איך עושים את זה. הנה relation view יכול להיות, אבל אני הייתי הולך על טכניקה קצת אחרת.

  20. 07:33

    בואו נראה אם הוא נותן לנו אותה. בואו נחזור רגע לדאטאבייס ונלך ל-db. כאן אני רואה ממש את ה-Database Diagram יש לנו כאן את הסופרים בואו נשים פה את הסופרים ויש לנו את הספרים.

  21. 07:54

    אנחנו יכולים להגדיר Relationship ביניהם על ידי זה שאנחנו הולכים לפה ו-Create Relationship, לוחצים עליה על ה-Create Relationship ואז הוא הולך לנו והוא שואל אותנו Select Reference the Key. איפה ה-Reference ה-Foreign Key שלנו?

  22. 08:13

    זה בטבלת הבוקס, Outdoor ID, אני פשוט מקליק עליו. אויש, ואז הוא אומר לי Select Foreign Key. אני רואה שטעיתי, זה לא. בואו רגע נבטל את זה. איך אני מבטל את זה?

  23. 08:30

    טוב, נעשה לו Cancel. בואו ננסה עוד פעם. Select Create Relationship. בואו ניגש ל-Primary Go וב-Outdoors, ואז Foreign, Outdoor ID, ואז הוא אומר לי, בואו ניצור לך, אם יש לך איזשהו אילוץ לגבי delete, בואו נגיד לו restrict.

  24. 08:57

    מה זה אומר? זה אומר שאם מוחקים ספר שיש לו, סליחה, סופר שיש לו ספרים, שהוא לא ייתן

לקורס המלא: קורס NodeJS אונליין בעברית

ההרצאה הקודמת: התקנה של XAMPP

ההרצאה הבאה: יבוא ויצוא מסד נתונים ב-phpMyAdmin

הרצאות קשורות מקורסים אחרים

  • יצירת מסד נתונים - SQL
  • יצירת מסד נתונים - של חנות בגדים
  • מסד נתונים של Metasploit
  • מסד נתונים SQL ב-AZURE - חלק 1

קורסים נוספים במסלול

  • קורס יסודות HTML - בניית אתר אינטרנט פשוט
  • קורס CSS 3 - בדגש על Flex & Grid
  • קורס Javascript כולל JQuery
  • קורס ג'אווה סקריפט מעשי - JavaScript
  • קורס TypeScript
  • קורס ריאקט - React