Nonrepeatable read

נתן.ל

New member
Nonrepeatable read

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

מה זה, בדיוק, Nonrepeatable read, ואיך בדיוק זה שונה מ Dirty read?

כן, אני עושה חזרה על Isolation level ומנסה להבין את זה לעומק.
לתשובתכם אודה
 

pitoach

New member


 

גרי רשף

New member
קצת באיחור

אני מתאר את שני המקרים מנקודת מבטך:
&nbsp
Dirty read- אתה קורא נתון ומתברר לאחר מכן שהוא איננו, לא היה ולא נברא. כלומר - לא שינו אותו בינתיים, אלא הוא לא היה קיים.
זו תקלה שתקרה אם תקרא נתונים מטרנזקציה שלא נשמרה, ומכיוון שלא נשמרה - היא לא הייתה מעולם חלק מהטבלה, אלא נתונים "מלוכלכים" שלא נשמרו.
&nbsp
Nonrepeatable read- אתה פותח טרנזקציה, קורא נתונן מטבלה, קורא שוב (הטרנזקציה עדיין פתוחה!) ומקבל נתון אחר.
בניגוד למקרה הקודם, הפעם מדובר בשינוי חוקי שמישהו עשה בטבלה.
זה קורה מפני שאתה לא נעלת את הטבלה לשינויים במהלך הטרנזקציה שלך. ההתנהגות הנכונה היא שבמהלך הטרנזקציה שלך - הנתונים שאתה קורא לא ישתנו.
&nbsp
שני המונחים הנ"ל מתארים בעיות שיש למנוע, וששימוש נכון בטרנזקציות - מונע.
אם תופעה כזו קורית- זו תקלה: כלי ניהול בסיסי נתונים פגום, או שימוש לא נכון בו.
&nbsp
 
למעלה