הודעת Unrecognized database format ב-Access: מה היא באמת אומרת, סדר הפעולות לשחזור בלי להרוס את הקובץ, ומתי זה הסימן לצאת מ-Access.
עיקרי הדברים
- קודם עותק, אחר כך כל דבר אחר. כל כלי תיקון עובד על הקובץ במקום ויכול להחמיר.
- הודעה זו נגרמת בעיקר משני דברים: קובץ בגרסה חדשה יותר מהתוכנה, או קובץ שנפגם.
- קובץ שיושב על תיקייה משותפת ברשת ונפתח בו-זמנית הוא הגורם השכיח לפגיעה.
- אם הקובץ לא מפוצל ל-front end ו-back end, זו הסיבה שהתקלה משביתה את כולם.
- תקלה חוזרת היא סימן ארכיטקטוני, לא תקלה נקודתית.
ההודעה `Unrecognized database format` אומרת ש-Access לא מצליח לקרוא את מבנה הקובץ - בדרך כלל בגלל פער גרסאות בין הקובץ לתוכנה, או בגלל פגיעה בקובץ. הפעולה הראשונה היא תמיד להעתיק את הקובץ הצידה. רוב אובדן הנתונים בתרחיש הזה קורה מניסיונות התיקון, לא מהתקלה עצמה.
מה ההודעה בעצם אומרת?
Access קורא כותרת בתחילת הקובץ שמצהירה על גרסת הפורמט. אם הכותרת מצהירה על משהו שהגרסה המותקנת לא יודעת לפרש, או אם היא לא קריאה, זו ההודעה שמתקבלת. שני התרחישים נראים זהים למשתמש ודורשים טיפול שונה:
| התרחיש | הסימן | הכיוון | |---|---|---| | פער גרסאות | הקובץ נפתח במחשב אחר | להתקין גרסה מתאימה או להמיר במחשב שכן פותח | | קובץ פגום | לא נפתח בשום מחשב | שחזור מגיבוי, ואז Compact and Repair על עותק | | סיומת שגויה | הקובץ הועתק או שונה שמו ידנית | לבדוק מקור, לא לשנות סיומת בתקווה | | קובץ נעול | קיים קובץ `.laccdb` פעיל | לוודא שאף אחד לא מחובר לפני טיפול |
סדר הפעולות לשחזור
- סגרו את הקובץ אצל כל המשתמשים ואל תפתחו אותו שוב.
- העתיקו את הקובץ למקום אחר. כל העבודה מכאן היא על העותק.
- בדקו אם קיים גיבוי אחרון תקין - הוא כמעט תמיד המסלול המהיר והבטוח.
- נסו לפתוח את העותק במחשב עם גרסת Access אחרת, כדי לזהות אם זו בעיית גרסה.
- רק אחרי גיבוי, הריצו Compact and Repair על העותק.
- אם השחזור הצליח חלקית, ייצאו את הטבלאות למסד נתונים חדש במקום להמשיך לעבוד בקובץ הפגוע.
למה זה חוזר שוב ושוב
תקלה חד-פעמית קורית. תקלה שחוזרת מצביעה כמעט תמיד על אחד מאלה:
- קובץ יחיד לא מפוצל על תיקייה משותפת, שכמה משתמשים פותחים במקביל.
- חיבור רשת לא יציב או WiFi. Access רגיש במיוחד לניתוק באמצע כתיבה.
- סנכרון ענן - תיקייה מסונכרנת ל-OneDrive או Dropbox שמסנכרנת קובץ פתוח.
- גודל - קובץ שמתקרב למגבלת הגודל של הפורמט מתנהג באופן לא צפוי.
מתי זו כבר לא תקלה אלא החלטה
אם הקובץ הזה מריץ תהליך עסקי - הזמנות, מלאי, לקוחות - ואם נפילה שלו עוצרת עבודה של אנשים, השאלה כבר אינה איך לתקן אלא כמה זמן נשאר. המסלול המקובל אינו כתיבה מחדש בבת אחת:
- פיצול ל-front end ו-back end כפתרון מיידי שמקטין נזק.
- העברת הנתונים ל-SQL Server, כשה-Access נשאר בינתיים כממשק.
- החלפת המסכים בהדרגה, מודול אחר מודול, לפי מה שהכי כואב.
איך מפצלים ל-front end ו-back end
זו הפעולה שמורידה הכי הרבה סיכון בהכי מעט עבודה, והיא לא דורשת שינוי בלוגיקה:
- גבו את הקובץ הקיים.
- צרו קובץ חדש שיכיל רק את הטבלאות - זהו ה-back end. הוא יושב על השרת או התיקייה המשותפת.
- הקובץ המקורי, עם הטפסים, השאילתות והדוחות, הופך ל-front end. מוחקים ממנו את הטבלאות ומקשרים אותן מה-back end כטבלאות מקושרות.
- לכל משתמש עותק משלו של ה-front end, מקומית על המחשב שלו. זו הנקודה שרוב האנשים מפספסים, וזו כל הפואנטה.
- גיבוי אוטומטי של ה-back end בלבד, בתדירות שמתאימה לקצב העבודה.
אחרי הפיצול, קריסה של משתמש אחד לא נוגעת בנתונים המשותפים, ועדכון מסך לא דורש להוציא את כולם מהמערכת.
סימנים שהקובץ מתקרב לגבול
פורמט Access מוגבל ל-2GB לקובץ. הרבה לפני שמגיעים למספר הזה מופיעים סימנים:
- הקובץ תופח במהירות ומצטמצם דרמטית אחרי Compact - סימן לכתיבה ומחיקה אינטנסיביות.
- פעולות שהיו מיידיות לוקחות שניות.
- נעילות תכופות בין משתמשים על אותה טבלה.
- דוחות שנופלים רק על טווח תאריכים רחב.
כשמופיעים שניים מאלה יחד, העברת הטבלאות ל-SQL Server היא לרוב זולה יותר מהמשך התחזוקה.
קשור: יצאנו מהגיליונות - מתי בונים מערכת, מעבר מאקסל ל-ERP ישראלי, מה זה בסיס נתונים.
מקורות
שאלות נפוצות
מה הדבר הראשון שצריך לעשות?
להעתיק את הקובץ למקום אחר לפני כל פעולה אחרת. כלי תיקון פועלים על הקובץ במקום, וניסיון תיקון על העותק היחיד הוא הדרך הנפוצה ביותר להפוך תקלה הפיכה לאובדן נתונים.
האם Compact and Repair בטוח להרצה?
הוא בטוח רק על עותק. הפעולה כותבת מחדש את הקובץ, ואם המבנה כבר פגום היא עלולה לקבע נזק. מריצים אותה אחרי שיש עותק שמור בצד ואחרי שנבדק אם יש גיבוי תקין.
למה זה קורה דווקא כשכמה אנשים עובדים יחד?
קובץ Access לא מפוצל שיושב על תיקייה משותפת נכתב על ידי כל המשתמשים במקביל. ניתוק רשת קצר באמצע כתיבה מספיק כדי לפגוע במבנה. פיצול ל-front end ו-back end מקטין משמעותית את החשיפה.
האם אפשר פשוט לשנות את הסיומת מ-mdb ל-accdb?
לא. הסיומת אינה מה שקובע את הפורמט - הפורמט מוצהר בתוך הקובץ עצמו. שינוי שם לא ממיר דבר, ורק מקשה על אבחון. המרה נעשית מתוך Access בגרסה שיודעת לפתוח את המקור.
להמשך קריאה
שירות רלוונטי
פיתוח MVP
להפוך רעיון למוצר מאומת תוך שבועות, לא חודשים.
על הכותב
יהונתן סעדיה
מפתח פרילנסר לאוטומציה, אתרים ו-MVP
אני יהונתן סעדיה, מפתח בכיר שבונה אוטומציה עסקית, אתרים מותאמים ומוצרי MVP לעסקים קטנים ובינוניים בארה"ב, אירופה וישראל. המדריכים האלה נכתבים מתוך עבודה אמיתית עם לקוחות, לא מתיאוריה.
בוא נעבוד יחדיש לך פרויקט דומה?
ספר לי מה אתה מנסה להפוך לאוטומטי או לבנות, ואומר לך מהי הדרך המהירה והאמינה ביותר ליישם את זה.
