
הטקסט המלא של הדקות הראשונות בהרצאה «איך נראה מסד נתונים תקין ?» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום וברוכים הבאים להרצאה על איך נראה דאטאבייס תקין אנחנו נראה מה זה לנרמל דאטאבייס לעשות אותו נורמלי אני יונתן רבזין ואתם בהרצאות של פרקטיקיו כמו שאתם יודעים יש לנו את כל ההרצאות בווידאו ב-350 שקל לחודש ללא התחייבות ואתם מקבלים הביתה מחשב נייד עם כל ההרצאות שלנו בווידאו אליכם הביתה עכשיו אנחנו נדבר על הדאטאבייס ואיך לנרמל
אותו ואיך נראה דאטאבייס תקין ובכלל ידע מאוד מאוד חשוב ידע כללי מאוד מאוד חשוב בואו נתחבר לדאטאבייס שיש לי. אני מתוך הווינדוס שבע שלי מתחבר לשרת שנמצא בחברת וואן הוסט.
מה זה חברת וואן הוסט? זו חברת אירוח אתרים, חברה שקנתה כמה שרתים ושמה עליהם מלא מלא מלא לקוחות.
אתם רואים, יש לי יוזרנר ופספורט בחברת אוסטינג. לקחו שרת אחד ומוכרים לכל בן אדם ב-7 דולר, ואני אחד מתוך אותם אלפים או מאות שיש להם. אז בואו נתחבר.
אני כותב לאיזה שרת להתחבר, השרת שלהם MSSQL 30, זה השם של השרת, אני דרך האינטרנט מתחבר לשרת SQL שנמצא אצל מישהו אחר, כי שם נמצא הדאטאבייס שלי.
דרך אגב, זה הדאטאבייס שלשם אני רושם כל מיני שיחות טלפון ופגישות וכל המידע שלי רשום שם. יפה. ויש לי שם וסיסמה בהתחברות לדאטאבייס, עושים קונקט ואנחנו התחברנו לשם.
בואו נראה מה אנחנו רואים. אנחנו רואים שיש פה מלא מלא דאטאבייסים קטנים. מה זה דאטאבייס בכלל? זה קובץ עם כל הטבלאות של לקוח.
תראו כמה לקוחות הם שמו על שרת אחד. חבר'ה, כל זה שרת אחד. שימו לב כמה לקוחות הם שמו על שרת אחד, ואיפה אנחנו?
הנה זה אני. אם אני מנסה להיכנס למישהו אחר, סתם לזה, הוא כותב לי: השם שלך, היוזר שלך, לא יכול להיכנס לשם. אני אומר: אוקיי, פרקטיק מיין.
פרקטיק מיין זה הדאטאבייס שלי, ושימו לב זה הטבלאות עם הנתונים שלי בואו נראה איזה נתונים יש לי בטבלאות תראו יש לי הרבה טבלאות אז יש לי פה טבלה לדוגמה c-trans c-trans זה מי השכיר לפטופ ובאיזה יום כל אחד שלוקח מחשב נייד נכנס לטבלה הזאתי אני עושה סלקט לראות מה יש בפנים ואני רואה פה שהכלי הגרפי הזה כתב לי פקודת sql לבד במקום שאני ארשום
אותה והעריץ פקודת sql הפקודה הזאתי סלקט ואיך כותבים אותה ומה זה אומר אנחנו נדבר על זה בהמשך. מאחורי הקלעים תמיד תוכנה כותבת sql מידע בשפת sql ואחרי שהתוכנה כותבת מידע ב sql היא שולחת את זה לשרת.
שרת מקבל פקודות בשפת sql ונותן תוצאה. במקום שאני ארשום את זה ידנית השתמשתי בתוכנה היפה הזאתי שמייקרוסופט עשו לי. יכלתי גם לרשום את זה ידנית, שרת זה לא מעניין אותו איך שלחת לו פקודות sql.
יפה. ואתם יכולים לראות פה שזה בעצם טבלה כמו באקסל. שתלמיד מספר 2091 לקח מחשב מספר 54 שימו לב זה מספר סידורי של המחשב ובאיזה תאריך הוא לקח את זה עד איזה תאריך הוא שילם וכמה הוא שילם ורציתי פה לקחת חברת מימון בסוף לא לקחתי אותם אז עשיתי להם עמודה שאני לא משתמש בה אז בגלל זה יש פה נעל מה זה נעל? נעל זה ריק
זה ואקום זה לא אפס זה לא אחד זה לא גדול זה לא קטן זה ואקום זה כלום דרך אגב הנעל הזה עושה המון בעיות למתכנתים כל כל הזמן כאב ראש עם הנעל הזה שאי אפשר לעשות לו לא גדול לא קטן לא קשה לאכול את הנעל הזה ומתכנתים שונאים את הנעל הזה אבל זאת האפשרות בדאטאבייס ו-id זה סתם מספר סידורי של השורה כן שיהיה לי נוח למחוק שורה אם אני נותן למחוק שיהיה לי למחוק אחרי זה נדבר שהשורה הזאת היא גם מפתח ראשי ומה זה אומר
ככה דאטאבייס שומר למעשה הדאטאבייס הזה אתם רואים דאטאבייס של פרקטיקיו זה הרבה מאוד טבלאות אתם רוצים לראות איזה טבלאות יש לי אני אספר לכם, טבלת תלמידים, בטבלת תלמידים אתם יכולים לראות פה שעל כל תלמיד יש מה המספר הסידורי, מה השם הפרטי שלו, מה האימייל שלו, מה תעודת זהות שלו ומה הכתובת שלו, לכל תלמיד יש פה בעצם הרבה עמודות,
זה פר תלמיד, כן, אתם רואים, דרך אגב הסטטוס שלו זה מפתח מטבלה אחרת, על זה אנחנו נדבר בהמשך. יש לי טבלה שאומרת איזה תלמיד נרשם לאיזה קורס, אתם רואים תלמיד נרשם לאיזה קורס ומה הסטטוס של הרישום שלו אוקיי יפה ויש לנו פה טבלת סטטוסים כמו שראינו לפני שנייה מה מספר הסטטוס ומה
השם שלו במקרה שאני ארצה לשנות את השם שהמספר לא ישתנה על כל זה אנחנו נדבר בהמשך תבינו תמונה כללית מה זה דאטאבייס דאטאבייס זה בעצם אוסף של טבלאות שנראה כמו אקסל וששומרות נתונים עכשיו נכון שזה לא נראה יפה הדבר הזה אבל זה רק מאגר לשמירת נתונים במקום קובץ אקסל עכשיו
שאלה מעניינת למה לא לשמור דברים באקסל מה צריך את כל הדבר הזה בשביל מה צריך את זה בואו נפתח אקסל וננסה לשמור שם נתונים ונראה איזה בעיות יש אז נתחיל קודם כל מזה שבאקסל יש בעיה שרק בן אדם אחד יכול לפתוח קובץ בו זמנית ואם יש לי חברה ש50 נציגים מתחברים וצריכים לקבל מידע ללקוחות
אקסל כבר לא מתאים אבל בואו נראה מה זה דאטאבייסט לא מנורמל ולנרמל אותו ונבין כל מיני דברים באקסל. אז בואו נעשה פה ככה, מספר לקוח, ננסה לעשות משהו, מערכת קטנה של הזמנות.
מספר לקוח, שם לקוח, טלפון של הלקוח, כמה פריטים הוא הזמין, פריט, איזה פריט, שם פריט, אתם יודעים מה, מספר פריט, נעשה מספר סידורי של הפריט, מספר סידורי של הפריט, אתם יודעים מה, אנחנו עוד לא יודעים למה צריך מספר סידורי בואו נעשה רק שם שם פריט כמות כמות שהוא הזמין
ומחיר פריט שימו לב אני מניח אני מניח שכל כל דבר אצלי זה מחיר קבוע אין לי מחיר ללקוח אחד מחיר ללקוח אחר יופי שם לקוח מספר לקוח שזה יהיה תעודת זהות אתם יודעים מה תעודת זהות תעודת זהות של הלקוח שם לקוח טלפון של לקוח שם פריט שהוא הזמין כמה כמות וכמה מחיר זה משהו פשוט שאני צריך תעודת זהות 77 סתם זה סתם אני ממציא נתונים של לקוח יוסי וטלפון שלו זה 03998877 מה הוא הזמין את יוקרתי מספר 7 את
יוקרתי מספר 7 והוא הזמין 25 יחידות שלו ומחיר של כל יחידה זה 350 שקל כן זה את יוקרתי ואותו יוסי עשה עוד הזמנה הוא באותה הזמנה הזמין כמה דברים הוא רצה גם את יוקרתי מספר 7 וגם את יוקרתי מספר תשע והוא רצה עשר כאלו במאתיים שקל וגם יוסי רצה עוד משהו יוסי גם רצה יוסי גם רצה דפים דפים דפים עם קצוות שרופים
עם קצוות שרופים כן מכירים את הדפים כאלו יפים לברכה סתם אני ממציא לא יודע מאיפה זה בא לי והוא רצה כאלו 180 יחידות וכל אחד עולה שלוש שקל אוקיי חבר'ה זה סתם אני ממציא, אין לי מושג, זה מצב רוח שלי עכשיו לדברים כאלו, אז זה, יפה, מה הבעיה פה?
אה, הגיע עכשיו לקוח חדש, לקחה לקוח חדש, שבע, שש, חמש, חמש, שלוש, שתיים, קוראים לו חיים, חיים, והטלפון שלו זה 054988, וחיים הזה, חיים הזה הזמין גם עתים כאלו, הוא הזמין חמש יחידות, וכמובן המחיר הוא אותו מחיר, אוקיי?
אז אני כל פעם עושה סייף, כל פעם שזה... אוקיי, אז וחיים הזה גם הזמין עוד משהו, הוא הזמין סתם דפים, סתם דפים פשוטים, והוא הזמין כאלו 900 דפים במחיר של 0.10 אגורות כל דף.
עוד פעם, אני עושה סייף כל פעם, חבר'ה. אוקיי, מה הבעיה בזה? זה שומר לי את הנתונים, אפשר לשלוח, יש פה בעיה? תשמעו, חבר'ה, אין פה בעיה, אפשר לעבוד ככה.
מתי מתחילה הבעיה? קודם כל זה נקרא לא מנורמל, למה זה לא מנורמל? כי המידע חוזר על עצמו כמה פעמים, אתם רואים יוסי והטלפון שלו כתוב כמה פעמים.
קודם כל זה מבזבז לי מקום, תחשבו שזה לא חמש שורות, תחשבו שזה לקוחות של הבנק, כל התנועות שלכם בעו"ש, כל השיחות טלפון שמתקשרים אליי אני מתעד, למקרה שאתם תתקשרו שוב שאני אדע על מה דיברנו.
תחשבו כמה מידע יש פה, יש פה תחשבו מאות שורות, אלפי שורות. זה שאני נותן לכם פה דוגמא עם החמש זה נראה לכם מצחיק אבל תחשבו בכמויות גדולות דאטה בייסים זה דברים ענקיים יפה מאוד אז קודם כל יש פה בעיה של בזבוז של מקום זה לא מנורמל אנחנו לא רוצים אבל עכשיו יש בעיה אחרת מה קורה אם יוסי מחליף את הטלפון שלו יוסי אומר אל
תתקשר אליי לבזק תתקשר לנייד שלי