Błąd NOTADB (26) — plik nie jest bazą danych
Opublikowano
Program przy uruchamianiu lub przy zmianie ustawień pokazał komunikat "SQLite error: NOTADB (26)" albo "file is not a database" (czyli "plik nie jest bazą danych"). Poniżej wyjaśniamy spokojnie, co to znaczy i od czego zacząć.
Ten artykuł dotyczy lokalnej bazy SQLite (plik .db na dysku) — to najczęstszy przypadek. Jeśli pracujesz na bazie MariaDB/MySQL (praca wielostanowiskowa, baza na serwerze), komunikat "file is not a database" ma inne przyczyny i inną drogę naprawy — zajrzyj wprost do artykułu Uszkodzenia bazy danych.
Jak wygląda problem
Program nie chce się połączyć z bazą i wyświetla jeden z komunikatów:
- "SQLite error: NOTADB (26)"
- "file is not a database"
- "plik nie jest bazą danych"
To zawsze ten sam problem: program znalazł plik, otworzył go, ale jego zawartość nie wygląda jak baza danych TaxMachine. Program sprawdza początek pliku (swego rodzaju "podpis" bazy) i jeśli podpis się nie zgadza, odmawia dalszej pracy, żeby nie uszkodzić danych jeszcze bardziej.
To nie to samo, co brak dostępu do pliku
Łatwo pomylić ten błąd z innym, podobnie brzmiącym. Warto rozróżnić:
- NOTADB (26) — plik jest i program może go otworzyć, ale jego zawartość nie jest bazą. Problem leży w tym, co jest w pliku.
- CANTOPEN (14) — program w ogóle nie może otworzyć pliku (brak pliku, brak uprawnień, dysk sieciowy, blokada antywirusa). Problem leży w dostępie do pliku.
Jeśli Twój komunikat mówi o braku dostępu lub o tym, że pliku nie da się otworzyć, zajrzyj do osobnego artykułu: Błąd CANTOPEN — nie można otworzyć pliku bazy. Tutaj zostajemy przy sytuacji, w której plik istnieje, ale jego treść jest nieprawidłowa.
Skąd się bierze ten błąd
Najczęstsze przyczyny — od najłatwiejszej do naprawy po najpoważniejszą:
- W opcjach programu wskazano zły plik. To najczęstszy i najprostszy do usunięcia powód. Zamiast właściwej bazy program dostał wskazanie na inny plik — np. dokument tekstowy, arkusz, PDF, kopię zapasową w innym formacie albo plik z zupełnie innego programu. Taki plik po prostu nie jest bazą danych.
- Plik jest obcięty lub niekompletny. Baza została przerwana w połowie kopiowania, ma zero bajtów, albo synchronizacja z chmurą (OneDrive, Google Drive, Dropbox) podmieniła ją na wersję częściową lub konfliktową (np. plik z dopiskiem w rodzaju „kopia w konflikcie"). Program widzi "pusty w środku" lub niekompletny plik i nie rozpoznaje w nim bazy.
- Uszkodzony początek pliku bazy. Awaria zasilania, błąd dysku lub przerwana operacja mogły zniszczyć pierwsze bajty pliku. Tej sytuacji zwykle nie da się naprawić bez kopii zapasowej.
- Plik został zaszyfrowany. Jeśli baza (i często też inne pliki wokół niej) wygląda na "zaszyfrowaną", ma dziwną nazwę lub obce rozszerzenie, może to być skutek działania złośliwego oprogramowania typu ransomware. Zaszyfrowany plik dla programu wygląda dokładnie jak "nie-baza".
- Pomylony format bazy. Wskazano plik jednego rodzaju bazy tam, gdzie program oczekuje innego (np. zrzut bazy serwerowej albo plik
.sqlzamiast lokalnej bazy). Formaty nie są wymienne.
Gdzie domyślnie leży baza
Jeśli nie wiesz, jaki plik powinien być wskazany, sprawdź domyślną lokalizację:
- TaxMachine:
C:\Users\Public\Documents\TaxMachine\LocalDB.db - PITy:
C:\Users\Public\Documents\PITy\LocalDB.db
Domyślna baza nazywa się LocalDB.db. Jeśli w opcjach wskazujesz własną ścieżkę, upewnij się, że plik faktycznie tam jest i że to rzeczywiście baza programu (zwykle z rozszerzeniem .db).
Co zrobić — po kolei
Krok 1. Sprawdź, czy program pokazuje na właściwy plik. Otwórz ustawienia bazy danych i zobacz, jaka ścieżka jest tam wpisana: Baza danych — wskazanie właściwego pliku. Jeśli okazuje się, że wskazany jest przypadkowy plik (dokument, PDF, kopia w złym formacie) albo plik z innego folderu — po prostu wskaż właściwą bazę. To rozwiązuje najczęstszy wariant tego błędu.
Krok 2. Jeśli baza leży w folderze synchronizowanym z chmurą — natychmiast przenieś ją do folderu lokalnego.
⚠️ Nigdy nie trzymaj działającej bazy danych w folderze OneDrive, Google Drive ani Dropbox. To jedna z najczęstszych przyczyn trwałego uszkodzenia bazy i bezpowrotnej utraty danych. Baza to plik, który program przez cały czas otwiera i zapisuje — a synchronizator w tym samym momencie próbuje go kopiować do chmury i z powrotem. Oba narzędzia „walczą" o ten sam plik; efektem bywają wersje częściowe, konfliktowe albo trwale uszkodzone (stąd między innymi ten błąd). Ryzyko jest szczególnie wysokie, gdy ten sam folder jest synchronizowany na dwóch komputerach naraz.
Przenieś bazę do zwykłego folderu lokalnego — najlepiej domyślnego katalogu roboczego programu (C:\Users\Public\Documents\TaxMachine) — i wskaż nową lokalizację w opcjach bazy danych. Jeśli plik w folderze chmury zdążył się już uszkodzić, odtwórz go z kopii (krok niżej).
Chmura jest natomiast dobrym miejscem na kopie zapasowe. Sama kopia (a nie działająca baza) może i powinna trafiać poza komputer — także do chmury. Jak to poukładać: Kopie baz danych.
Krok 3. Odtwórz kopię zapasową — to zwykle najszybsze i najpewniejsze rozwiązanie.
Jeśli plik wskazany jest prawidłowo, a mimo to program nie widzi w nim bazy, oznacza to najczęściej, że sama zawartość jest uszkodzona. Uszkodzonego początku pliku zwykle nie da się naprawić — dlatego najlepiej sięgnąć po kopię: Kopie baz danych — odtworzenie kopii zapasowej. Po odtworzeniu wystarczy zwykle wskazać odzyskany plik w opcjach. Jeśli błąd pojawił się zaraz po aktualizacji programu, sięgnij najpierw po kopię, którą TaxMachine wykonuje automatycznie przed aktualizacją bazy — leży ona w katalogu kopii (domyślnie C:\Users\Public\Documents\TaxMachine\kopie\).
Krok 4. Jeśli nie masz kopii — spróbuj metod odzyskiwania. Bez kopii zapasowej pozostają zaawansowane metody ratowania danych z uszkodzonego pliku. Są one w całości opisane w osobnym artykule: Uszkodzenia bazy danych — naprawa i odzyskiwanie. Przy komunikacie "file is not a database" szanse na pełne odzyskanie bywają niewielkie, ale warto spróbować, zanim uznasz dane za utracone.
Uwaga: podejrzenie ransomware
Jeśli nie tylko baza, ale też inne pliki na komputerze mają nagle obce rozszerzenia, dziwne nazwy albo w folderach pojawiły się pliki z żądaniem okupu — przerwij pracę i nie próbuj niczego nadpisywać. To mogą być objawy ataku złośliwego oprogramowania. W takiej sytuacji nie odtwarzaj kopii "na tym samym", tylko najpierw zabezpiecz komputer i skontaktuj się z pomocą techniczną — pomożemy ocenić sytuację i bezpiecznie odzyskać dane.
Tematy pokrewne
- Błąd CANTOPEN — nie można otworzyć pliku bazy — gdy problemem jest dostęp do pliku, a nie jego zawartość
- Uszkodzenia bazy danych — naprawa i odzyskiwanie — pełne metody ratowania uszkodzonej bazy
- Baza danych — wskazanie właściwego pliku — sprawdzenie i zmiana ścieżki do bazy w opcjach
- Kopie baz danych — jak wykonywać i odtwarzać kopie zapasowe