Pliki baz danych mogą szybko rosnąć w miarę ich używania, co czasami utrudnia wydajność. Od czasu do czasu mogą ulec uszkodzeniu lub uszkodzeniu. Aby zapobiec tym problemom lub rozwiązać te problemy, możesz użyć polecenia Kompaktuj i napraw bazę danych . Proces kompaktowania danych nie powoduje ich kompresowania — polega on na zmniejszeniu rozmiaru pliku bazy danych przez wyeliminowanie nieużywanego miejsca. Polecenie Kompaktuj i napraw bazę danych może również poprawić wydajność bazy danych.
Porada Dzielenie bazy danych może zapobiec uszkodzeniu plików bazy danych i ograniczyć utratę danych przez przechowywanie danych w osobnym pliku, do którego użytkownicy nie mają bezpośredniego dostępu.
Sposoby kompaktowania i naprawiania bazy danych
Istnieje kilka metod kompaktowania i naprawiania bazy danych. Typowym rozwiązaniem jest automatyczne kompaktowanie i naprawianie bazy danych po jej zamknięciu. Ponadto można ręcznie uruchomić polecenie Kompaktuj i napraw bazę danych , jeśli baza danych jest otwarta i znajduje się w bazie danych, która nie jest otwarta.
Przed rozpoczęciem
Przed rozpoczęciem operacji kompaktowania i naprawiania wykonaj następujące czynności:
-
Tworzenie kopii zapasowej bazy danych Podczas procesu naprawy program Access może obciąć niektóre dane z uszkodzonych tabel. Czasami można odzyskać te dane z kopii zapasowej. Poza zwykłą strategią tworzenia kopii zapasowych należy wykonać kopię zapasową bezpośrednio przed użyciem polecenia Kompaktuj i napraw bazę danych . Aby uzyskać więcej informacji, zobacz Ochrona danych za pomocą procesów tworzenia i przywracania kopii zapasowych.
-
Uzyskiwanie wyłącznego dostępu do bazy danych Operacja kompaktowania i naprawiania wymaga wyłącznego dostępu do pliku bazy danych, ponieważ może ona przerwać pracę innym użytkownikom. Należy powiadomić innych użytkowników o zamiarze wykonania operacji kompaktowania i naprawiania, aby powstrzymali się od używania bazy danych w jej trakcie. Aby uzyskać więcej informacji, zobacz Otwieranie istniejącej bazy danych programu Access.
Poinformuj użytkowników, jak długo powinni powstrzymać się od używania bazy danych. Jeśli regularnie wykonujesz operacje kompaktowania i naprawiania, zapisuj, jak długo trwają. Umożliwi Ci to dokładniejsze oszacowanie czasu, przez jaki inni użytkownicy powinni powstrzymać się od używania bazy danych.
-
Uzyskiwanie wystarczających uprawnień do pliku do bazy danych Jeśli nie masz wystarczających uprawnień i chcesz skompaktować i naprawić bazę danych, skontaktuj się z administratorem systemu, aby uzyskać pomoc. Aby uzyskać więcej informacji, zobacz Zmiany w udostępnianiu plików w sieci w systemie Windows.
Automatyczne kompaktowanie i naprawianie podczas zamykania bazy danych
Jeśli chcesz automatycznie kompaktować i naprawiać bazę danych podczas jej zamykania, możesz wybrać opcję bazy danych Kompaktuj przy zamknięciu. Ustawienie tej opcji wpływa tylko na obecnie otwartą bazę danych. Ustaw tę opcję oddzielnie dla każdej bazy danych, którą chcesz automatycznie kompaktować i naprawiać. W przypadku baz danych, z których korzysta wielu użytkowników, ustawienie tej opcji nie jest zalecane, ponieważ może ona tymczasowo przerywać dostępność bazy danych.
-
Wybierz pozycję Plik > Opcje.
-
W oknie dialogowym Opcje programu Access wybierz pozycję Bieżąca baza danych.
-
W obszarze Opcje aplikacji zaznacz pole wyboru Kompaktuj przy zamknięciu.
-
Wybierz przycisk OK.
-
Zamknij i ponownie otwórz bazę danych, aby ta opcja została w pełni dostępna.
Ręczne kompaktowanie i naprawianie otwartej bazy danych
-
Wybierz pozycję Informacje o > pliku > Baza danych kompaktowych & naprawy.
Program Access tworzy kopię kompaktowanej i naprawionej bazy danych w tej samej lokalizacji.
Ręczne kompaktowanie i naprawianie bazy danych, która nie jest otwarta
Wykonaj tę procedurę, gdy nie możesz bezpośrednio otworzyć bazy danych programu Access.
-
Upewnij się, że żaden inny użytkownik nie korzysta obecnie z pliku bazy danych.
-
Uruchom program Access.
-
Na stronie szablony kliknij dwukrotnie pozycję Pusta baza danych.
-
Wybierz pozycję Plik > Zamknij.
-
Wybierz pozycję Narzędzia bazy danych > Kompaktuj i napraw bazę danych.
-
W oknie dialogowym Źródłowa baza danych do kompaktowania przejdź do bazy danych, którą chcesz skompaktować i naprawić, a następnie kliknij ją dwukrotnie.
Program Access tworzy kopię kompaktowanej i naprawionej bazy danych w tej samej lokalizacji.
Kompaktowanie i naprawianie uszkodzonej bazy danych po wyświetleniu monitu w programie Access
Jeśli podczas próby otwarcia uszkodzonego pliku bazy danych program Access wyświetli monit o kompaktowanie i naprawianie bazy danych, wybierz pozycję Tak. Mogą się zdarzyć dwie rzeczy:
-
Jeśli program Access całkowicie naprawi uszkodzony plik, zostanie wyświetlony komunikat informujący, że naprawa zakończyła się pomyślnie i należy sprawdzić zawartość bazy danych, aby się upewnić, że wszystko jest w porządku.
-
Jeśli program Access tylko częściowo się powiedzie, będzie śledzić obiekty bazy danych, których nie można naprawić w tabeli systemowej o nazwie MSysCompactErrors. Program Access otworzy tabelę MSysCompactErrors w widoku arkusza danych. Jeśli masz kopię zapasową bazy danych wykonaną przed uszkodzeniem bazy danych, możesz za pomocą tabeli MSysCompactErrors określić, które obiekty mają zostać zaimportowane do naprawionej bazy danych. Aby wyświetlić tabele systemowe, kliknij prawym przyciskiem myszy pasek tytułu nawigacji, a następnie w oknie dialogowym Opcje nawigacji wybierz pozycję Pokaż obiekty systemowe.
Dlaczego warto kompaktować i naprawiać bazę danych
W tym omówieniu wyjaśniono, jak za pomocą polecenia Kompaktuj i napraw bazę danych można zapobiegać następującym problemom, które czasami mogą wpływać na bazę danych, a także jak rozwiązywać te problemy: zwiększanie się rozmiaru plików podczas ich używania oraz uszkodzenia plików.
Rozmiary plików baz danych rosną w trakcie ich używania
W miarę dodawania i aktualizowania danych oraz zmieniania ich projektu plik bazy danych staje się coraz większy. Część tego zwiększenia wynika z dodania danych, ale są też inne przyczyny:
-
Program Access tworzy ukryte obiekty tymczasowe w celu realizowania różnych zadań. Czasami te obiekty tymczasowe pozostają w bazie danych programu Access, chociaż nie są już potrzebne.
-
Po usunięciu obiektu bazy danych zajmowane przez niego miejsce na dysku nie jest automatycznie odzyskiwane — plik bazy danych nadal używa tego miejsca na dysku mimo usunięcia obiektu.
Coraz więcej pozostałości po obiektach tymczasowych w pliku bazy danych powoduje pogorszenie jego wydajności. Obiekty mogą być otwierane wolniej, a uruchamianie zapytań i wykonywanie typowych operacji może trwać dłużej.
Pliki baz danych mogą ulegać uszkodzeniom
W określonych okolicznościach plik bazy danych może zostać uszkodzony. Jeśli plik bazy danych jest udostępniany przez sieć i wielu użytkowników pracuje z nim bezpośrednio jednocześnie, istnieje niewielkie ryzyko uszkodzenia pliku. Ryzyko uszkodzenia jest nieco większe, jeśli użytkownicy często edytują dane w polach typu Długi tekst, a ryzyko rośnie wraz z upływem czasu. To ryzyko można ograniczyć za pomocą polecenia Kompaktuj i napraw bazę danych .
Często uszkodzenie tego typu wynika z problemu z modułem języka Visual Basic for Applications (VBA) i nie stwarza ryzyka utraty danych. Uszkodzenie tego typu stwarza jednak ryzyko uszkodzenia projektu bazy danych, polegającego na przykład na utracie kodu VBA lub braku użyteczności formularzy.
Uszkodzenie pliku bazy danych rzadko powoduje utratę danych. Zazwyczaj ta utrata jest ograniczona do ostatniej akcji jednego użytkownika, czyli do jednej zmiany danych. Gdy użytkownik rozpoczyna zmienianie danych i zostanie to przerwane — na przykład ze względu na utratę usługi sieciowej — programu Access oznacza plik bazy danych jako uszkodzony. Taki plik można naprawić, ale po zakończeniu naprawy niektórych danych może brakować.
Zobacz też
Ochrona danych za pomocą procesów wykonywania i przywracania kopii zapasowych