PracticU

מחיקת רשומה - שיטה שניה

בלי כתוביותעם כתוביות
PracticU › קורס Entity Framework Core - עבודה עם מסד נתונים בדוט-נט › מחיקת רשומה - שיטה שניה
מילון מושגים:
רשומה - שורה בטבלת מסד נתונים שמרכזת את כל השדות של פריט אחד, למשל כל הפרטים של לקוח יחיד.
אובייקט - יחידה בתכנות מונחה עצמים שמאגדת נתונים (תכונות) ופעולות (מתודות). נוצר בדרך כלל ממחלקה המשמשת כתבנית.
פונקציה - קטע קוד בעל שם שמבצע משימה מוגדרת, מקבל ערכי קלט (פרמטרים) ויכול להחזיר תוצאה. מאפשרת לארגן קוד ולהשתמש בו שוב.
DELETE - פקודת SQL למחיקת שורות מטבלה. גם שיטת HTTP לבקשת מחיקה של משאב בשרת.
סטייט - המידע על מצבו הנוכחי של רכיב או אפליקציה בזמן נתון, שמשתנה ומשפיע על מה שמוצג.
טבלה - מבנה במסד נתונים שמאחסן נתונים בשורות ועמודות. כל שורה היא רשומה וכל עמודה היא שדה.

מחיקת רשומה - שיטה שניה
בשיטה השניה למחיקה לא מביאים את הרשומה מהדאטאבייס, בדומה לשיטה השניה בעדכון. מספיק ליצור אובייקט שמכיל רק את ה-ID, לחבר אותו לקונטקסט ולסמן אותו למחיקה.
השלבים העיקריים
1. הכנה: מעתיקים את שיטת העדכון השנייה וקוראים לפונקציה delete gift 2. הפעם מוחקים את הפריט 3, כי הפריט 4 כבר נמחק.
2. בדיקת קיום: אפשר לבדוק אם הפריט קיים, ואם לא להציג no such gift.
3. אובייקט עם ID בלבד: יוצרים Gift עם ה-ID בלבד, ללא שאר המאפיינים. זה מספיק, כי מחיקה נעשית תמיד לפי ID.
4. חיבור וסימון: קוראים ל-Attach, ואז קובעים את ה-State ל-Deleted, ושומרים עם SaveChanges.
מצבי האובייקט במהלך הריצה
כשמדפיסים את המצב בכל שלב רואים: Detached כשהאובייקט נוצר, Unchanged אחרי ה-Attach, Deleted אחרי הסימון, ואחרי השמירה שוב Detached, כלומר האובייקט כבר לא קיים בדאטאבייס. אחרי רענון הטבלה הפריט 3 אכן נעלם.
אפשר כעת למחוק רשומה גם בלי להביא אותה קודם מהדאטאבייס.
השיעור הבא בקורס: הסבר מעמיק על Context Entity Framework Core

פרקי ההרצאה: מחיקת רשומה - שיטה שניה

  1. 00:00

    שיטת המחיקה השנייה

  2. 00:37

    יצירת gift לפי ID בלבד

  3. 01:11

    מעקב אחרי ה-states במחיקה

תמלול ההרצאה: מחיקת רשומה - שיטה שניה

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

  1. 00:02

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

  2. 00:11

    אז קודם כל יש לנו פה delete, gift 2. deleting a gift. בואו נשכפל את זה, יש לנו delete, gift 1 ו-2. ומה אנחנו צריכים לשנות?

  3. 00:23

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

  4. 00:37

    אנחנו לא צריכים למחוק אותו אם הוא לא קיים אז הנה בדיקה no such gift ואז מה שאנחנו רוצים לעשות זה לייצר דמו של gift אבל אנחנו לא צריכים עכשיו לייצר את כל יתר המאפיינים כי אני רוצה למחוק אותו ומחיקה מתבצעת תמיד לפי ID לכן מתאים לנו רק לייצר gift עם ID בלבד זה מספק עבור מחיקה לאחר מכן לבצע.

  5. 01:02

    Attach, לאחר מכן להגיד שה-State הוא, עניתם נכון, Deleted. אז מה יהיה לנו פה? פה יהיה לנו Detached, פה יהיה לנו Attached, פה יהיה לנו Deleted, Save Changes, מוחק אותו, ואז זה מעניין מה יהיה בסוף.

  6. 01:20

    בואו רגע נחזיר את כל אלה ונראה את הטכניקה הזאת עם ההדפסות. בואו נריץ, יש לנו כאן Detached כמו שחשבנו, לאחר מכן יש לנו Attach אז הוא Unchanged כי חיברנו אותו לאחר מכן הפכנו אותו ל-Deleted וכאשר הוא נמחק הוא הופך להיות ל-Detached.

  7. 01:43

    למעשה Detached זה אומר שהוא כבר לא קיים

לקורס המלא: קורס Entity Framework Core

ההרצאה הקודמת: מחיקת רשומה - שיטה ראשונה

ההרצאה הבאה: הסבר מעמיק על Context - Entity Framework Core

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

  • מחיקת מוצר - קורס NodeJS
  • מחיקת מוצר בריאקט
  • מחיקת VPC - ב-AWS
  • תיעוד של מחיקת קובץ

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

  • קורס דוט-נט - NET Core. - עם Rest API
  • קורס ASP.NET
  • קורס MVC
  • קורס Git ו-GitHub עם Visual Studio