סנכרון - בקשת מדריך
-
נושא נושא. איזה מסד זה?
מה הסיטואציה? יכול להיות הרבה בעיות שקשורות לאופי השימוש.
בפשטות מה שצריך זה:
א. זיהוי הוספה/מחיקה של שורות, עבור זה צריך שדות אלו בשני הצדדים:- מזהה יחודי גלובלי (GUID) כאינדקס ראשי.
- מזהה זמן או מס' רץ.
ב. זיהוי עדכון, בכמה דרכים:
- או טבלת שינויים. וההשוואה תהיה על הטבלה הזו. צריך לתחזק אותה ולהיות בטוח שכל שינוי נרשם בה.
- שדה עם תאריך שינוי, וצריך טכניקה שתכפה את עדכונו בכל שינוי בשורה.
- שדה שיכיל גיבוב של כל ערכי השדות הניתנים לשינוי בטבלה. מבחינת ביצועים ייתכן ששדה זה כדאי בכל מקרה בשביל לצמצם את הסריקה רק עבור שדות לא זהים.
פורסם במקור בפורום CODE613 ב21/10/2015 11:46 (+03:00)
-
בהמשך לדברי דוד
זיהוי הוספה/מחיקה של שורות בפשטות מזהה זמן או מספר רץ לא יפתור את זה כי יוכל להיווצר זהה בשני הצדדים, GUID כן יכול לפתור את זה או מפתח כפול/שרשור של שם השרת ומספר מזהה.
יש גם את הנושא של עדכונים סותרים שצריך להחליט מי גובר (אם אחרון או לפי בכירות משתמש וכו')אם המדובר ב SQL אתה יכול להשתמש בטריגר שהעליתי כאן על מנת ללגג את השינויים ואז לבדוק אילו שורות מטבלאות השינויים לא קיימות בשרת השני, לכבות טריגרים, לבצע אותם, ולרשום אותם לטבלה על מנת שלא יתבצעו שוב בסנכרון הבא.
http://tchumim.com/topic/533פורסם במקור בפורום CODE613 ב21/10/2015 12:56 (+03:00)
-
זיהוי הוספה/מחיקה של שורות בפשטות מזהה זמן או מספר רץ לא יפתור את זה כי יוכל להיווצר זהה בשני הצדדים, GUID כן יכול לפתור את זה או מפתח כפול/שרשור של שם השרת ומספר מזהה.
המזהה זמן/מספר רץ לא בא להחליף את הGUID אלא מוסיף עליו אפשרות לדעת עד איזה נקודה נסרקו הנוספים ולפי זה להכריע בין הוספה למחיקה.
ככה לא מוכרחים לתעד מחיקות.פורסם במקור בפורום CODE613 ב21/10/2015 13:02 (+03:00)
-
סנכרון נתונים - לצורך העניין, 2 מסדי נתונים, בשניהם מוסיפים רשומות ומשנים נתונים
האם יש איזשהם דרכים ויסודות בסנכרון? אבני יסוד או נקודות ציון כצידה לדרך?@דוד ל.ט.
נושא נושא. איזה מסד זה?
יש מסדים שיש את הסינכרון זה מובנה.
בעבר באקסס היה.
איזה מסד זה?
פורסם במקור בפורום CODE613 ב21/10/2015 14:13 (+03:00)
-
במקרה הנוכחי מדובר באקסס. (וסנכרן בין המסד בשני מחשבים) אבל השאלה מבחינתי היא כללית מבחינת מעקב אחרי שינויים בנתונים.
החכמתי ונעזרתי.אז אכן, במקרה של מחיקה וכ"ש הוספה זה פשוט, וכנ"ל עם GUID ומפתח כפול
הסנכרון הוא דו צדדי, מה שאומר בעצם, ברחל בתך - שליחת הנתונים מA לB, ייבוא לB, שליחה מB לA, ייבוא לA. י(ייבוא - כמובן, סנכרון הוספה, מחיקה ועדכון כדלהלן)הבעיה או הקושי הוא בעדכון נתונים,
להבנתי ניתן ליצור בעצם טבלת שינויים בין הטבלאות (2 אפשרויות ליצירת הטבלה, השוואת נתונים בכל השדות ברשומה, השוואת תאריך שינוי בין שתי הרשומות) ולהחליט מה גובר.
בכירות משתמש לדוגמא לא תמיד נכון במקרה שהמשתמש הבכיר הכניס את הרשומה ולכן רשום כאחרון ששינה אותה [יש לי שדה זמן עדכון מתעדכן בכל שינוי ע"י קוד בטופס] והמשתמש הזוטר עדכן.
כמו"כ במקרים מסוימים לתת למשתמש להחליט מה גובר (ואפשרות להסכמת שינויי בשדות מסויימים ברשומה),פורסם במקור בפורום CODE613 ב24/10/2015 22:58 (+03:00)