Przejdź do głównej zawartości
Tworzenie i uruchamianie kwerendy usuwającej

Tworzenie i uruchamianie kwerendy usuwającej

Gdy zechcesz szybko usunąć wiele danych lub usunąć zestaw danych na bieżąco w bazie danych programu Access dla komputerów stacjonarnych, kwerenda usuwająca lub aktualizująca może być przydatna, ponieważ umożliwia określenie kryteriów umożliwiających szybkie znajdowanie i usuwanie danych. Używanie kwerendy może być również timesaver, ponieważ można ponownie użyć zapisanej kwerendy.

Uwaga: Przed usunięciem danych lub uruchomieniem zapytania usuwającego należy upewnić się, że wykonano kopię zapasową bazy danych programu Access dla komputerów stacjonarnych.

Jeśli chcesz usunąć tylko kilka rekordów, nie potrzebujesz kwerendy. Po prostu Otwórz tabelę w widoku arkusza danych, zaznacz pola (kolumny) lub rekordy (wiersze), które chcesz usunąć, a następnie naciśnij klawisz DELETE.

Ważne:  Informacje zawarte w tym artykule są przeznaczone do użytku tylko z bazami danych dla komputerów stacjonarnych. W aplikacjach sieci Web programu Access nie można używać zapytań Delete ani Update.

W tym artykule

Wybieranie typu zapytania

Używanie zapytania usuwającego

Korzystanie z kwerendy aktualizującej

Informacje dodatkowe

Porady dotyczące rozwiązywania problemów

Wybieranie typu zapytania

Do usuwania danych z bazy danych można użyć kwerendy aktualizującej lub kwerendy usuwającej. Wybierz zapytanie na podstawie szczegółów podanych w poniższej tabeli:

Typ kwerendy

Okoliczności użycia

Wyniki

Używanie zapytania usuwającego

Usuwanie całych rekordów (wierszy) z tabeli lub dwóch tabel pokrewnych jednocześnie.

Uwaga:  Jeśli rekordy znajdują się po stronie "po" relacji "jedno-do-wielu", może być konieczne zmodyfikowanie relacji przed uruchomieniem kwerendy usuwającej. Zobacz sekcję usuwanie danych z powiązanych tabel.

Usuwanie zapytań usuwanie wszystkich danych w każdym polu, włącznie z wartością klucza, który powoduje unikatowość rekordu

Korzystanie z kwerendy aktualizującej

Usuwanie poszczególnych wartości pól z tabeli.

Ułatwia usuwanie wartości przez zaktualizowanie istniejących wartości na wartość null (czyli brak danych) lub ciąg o zerowej długości (parę podwójnych cudzysłowów bez spacji między nimi).

Początek strony

Co należy sprawdzić przed użyciem kwerendy w celu usunięcia danych

  • Upewnij się, że plik nie jest plikiem tylko do odczytu:

    1. Kliknij prawym przyciskiem myszy pozycję Start , a następnie kliknij polecenie Otwórz Eksploratora Windows.

    2. Kliknij prawym przyciskiem myszy plik bazy danych i kliknij pozycję Właściwości.

    3. Sprawdzanie, czy jest zaznaczony atrybut tylko do odczytu .

  • Sprawdź, czy masz odpowiednie uprawnienia do usuwania rekordów z bazy danych. Jeśli nie masz pewności, skontaktuj się z administratorem systemu lub projektantem bazy danych.

  • Upewnij się, że włączono zawartość w bazie danych. Domyślnie program Access blokuje wszystkie kwerendy funkcjonalne (kwerendy usuwające, aktualizujące i tworzące tabele), chyba że najpierw ufasz bazie danych. Aby uzyskać informacje na temat ufania bazie danych, zobacz sekcję Zatrzymywanie blokowania zapytania przez Tryb wyłączony.

  • Poproś innych użytkowników bazy danych o zamknięcie wszystkich tabel, formularzy, zapytań i raportów używających danych, które chcesz usunąć. Pomaga to uniknąć naruszeń blokady.

  • Przed edytowaniem lub usuwaniem rekordów warto wykonać kopię zapasową bazy danych na wypadek, gdyby zmiany były odwracane.

Porada:  Jeśli duża liczba użytkowników nawiąże połączenie z bazą danych, może być konieczne zamknięcie bazy danych, a następnie ponowne jej otwarcie w trybie wyłączności .

Aby otworzyć bazę danych w trybie wyłączności

  1. Kliknij kartę plik > Otwórz.

  2. Przejdź do pozycji Wybierz bazę danych i wskaż ją, a następnie kliknij strzałkę obok przycisku Otwórz , a następnie kliknij polecenie Otwórz z wyłącznością.

    Otwieranie pliku w trybie wyłączności

Wykonywanie kopii zapasowej bazy danych

  1. Kliknij kartę plik , a następnie wskaż polecenie Zapisz jako.

  2. Kliknij pozycję Zapisz bazę danych jako, kliknij pozycję Wykonaj kopię zapasową bazy danych. Program Access zamknie oryginalny plik, utworzy kopię zapasową, a następnie ponownie otworzy oryginalny plik.

  3. Kliknij pozycję Zapisz jako i określ nazwę i lokalizację kopii zapasowej, a następnie kliknij przycisk Zapisz.

Uwaga:  Jeśli używasz tylko do odczytu lub bazy danych utworzonej w poprzedniej wersji programu Access, może zostać wyświetlony komunikat z informacją, że nie można utworzyć kopii zapasowej bazy danych.

Aby przywrócić dane z kopii zapasowej, zamknij oryginalny plik i zmień jego nazwę, dzięki czemu będzie można użyć nazwy oryginalnej wersji dla kopii zapasowej. Przypisz nazwę oryginalnej wersji do kopii zapasowej, a następnie otwórz kopię zapasową w programie Access.

Używanie zapytania usuwającego

Aby utworzyć kwerendę usuwającą, kliknij kartę Tworzenie w grupie kwerendy kliknij pozycję Projekt kwerendy. W oknie dialogowym Pokazywanie tabeli kliknij dwukrotnie każdą tabelę, z której chcesz usunąć rekordy, a następnie kliknij przycisk Zamknij.

Tabela zostanie wyświetlona jako okno w górnej części siatki projektu kwerendy. Na liście pól kliknij dwukrotnie gwiazdkę (*), aby dodać wszystkie pola tabeli do siatki projektu.

Używanie określonych kryteriów w kwerendzie usuwającej

Ważne: Użyj kryteriów, aby zwrócić tylko rekordy, które chcesz usunąć. W przeciwnym razie kwerenda usuwająca usuwa wszystkie rekordy z tabeli.

Kliknij dwukrotnie pole, które ma zostać określone jako kryteria usuwania, wprowadź jedno kryterium w wierszu kryteria projektanta zapytań, a następnie wyczyść pole wyboru Pokaż dla każdego pola kryterium.

Przykład, kiedy warto użyć tej opcji: Załóżmy, że chcesz usunąć wszystkie oczekujące zlecenia dla klienta. Aby znaleźć tylko te rekordy, należy dodać pola Identyfikator klienta i Data zamówienia do siatki projektu kwerendy, a następnie wprowadzić numer IDENTYFIKACYJNy klienta i datę, w której zamówienia tego klienta były nieprawidłowe.

  1. Na karcie Projektowanie kliknij pozycję Widok > Widok arkusza danych.

  2. Sprawdź, czy zapytanie zwraca rekordy, które chcesz usunąć, a następnie naciśnij klawisze CTRL + S, aby zapisać zapytanie.

  3. Aby uruchomić zapytanie, kliknij dwukrotnie zapytanie w okienku nawigacji.

Początek strony

Korzystanie z kwerendy aktualizującej

Uwaga:  W aplikacji sieci Web programu Access nie można używać opcji kwerendy aktualizującej.

W tej sekcji wyjaśniono, jak używać kwerendy aktualizującej do usuwania poszczególnych pól z tabel. Pamiętaj, że uruchomienie zapytania aktualizującego w celu usunięcia danych spowoduje zmianę istniejących wartości na NULL lub ciąg o zerowej długości (parę podwójnych cudzysłowów bez spacji w zakresie), zależnie od określonych kryteriów.

  1. Kliknij kartę Tworzenie i w grupie kwerendy kliknij pozycję Projekt kwerendy.

  2. Zaznacz tabelę zawierającą dane, które chcesz usunąć (Jeśli tabela jest powiązana relacją, zaznacz tabelę po stronie "po jednej" relacji), kliknij przycisk Dodaj, a następnie kliknij przycisk Zamknij.

    Tabela zostanie wyświetlona jako okno w górnej części siatki projektu kwerendy. Okno zawiera listę wszystkich pól w zaznaczonej tabeli.

  3. Kliknij dwukrotnie gwiazdkę (*), aby dodać wszystkie pola tabeli do siatki projektu. Dodanie wszystkich pól tabeli umożliwia kwerendy usuwającej usunięcie całych rekordów (wierszy) z tabeli.

    Opcjonalnie można wprowadzić kryteria dla co najmniej jednego pola w wierszu kryteria projektanta, a następnie wyczyścić pole wyboru Pokaż dla każdego pola kryterium. Aby uzyskać więcej informacji na temat korzystania z kryteriów, zobacz Przykładowe kryteria tabeli SELECT zapytania .

    Uwaga:  Za pomocą kryteriów możesz zwracać tylko rekordy, które chcesz zmienić. W przeciwnym razie kwerenda aktualizująca ustawi wartość NULL dla każdego rekordu w każdym z pól w zapytaniu.

  4. Na karcie Projektowanie w grupie Wyniki kliknij przycisk Widok, a następnie kliknij pozycję Widok arkusza danych.

  5. Sprawdź, czy zapytanie zwraca rekordy, dla których chcesz ustawić wartość NULL, lub ciąg o zerowej długości (parę podwójnych cudzysłowów bez spacji między nimi ("").

  6. W razie potrzeby powtórz kroki od 3 do 5 i Zmień pola lub kryteria, aż kwerenda zwróci tylko dane, które chcesz usunąć, a następnie naciśnij klawisze CTRL + S, aby zapisać zapytanie.

  7. Aby uruchomić zapytanie, kliknij dwukrotnie zapytanie w okienku nawigacji.

Początek strony

Informacje dodatkowe

Usuwanie danych z powiązanych tabel

Jeśli chcesz usunąć dane z kilku powiązanych tabel, musisz włączyć opcje więzów integralności i Kaskadowo usuń rekordy pokrewne dla każdej relacji. Dzięki temu kwerenda będzie usuwać dane z tabel znajdujących się na stronie "jedna" i "wiele" relacji. Przygotowanie do usuniętych danych powiązanych wymaga weryfikacji następujących funkcji:

  • Ustal, które rekordy znajdują się po stronie "jednego" relacji, a które znajdują się po stronie "wiele".

  • Jeśli chcesz usunąć rekordy po stronie "po" relacji i powiązanych z nimi rekordach po stronie "wiele", możesz włączyć zestaw reguł o nazwie więzy integralności i włączyć usuwanie kaskadowe. W tej sekcji opisano więzy integralności oraz sposób wykonywania obu zadań.

  • Jeśli chcesz usunąć rekordy tylko po stronie "jednego" relacji, najpierw usuń tę relację, a następnie Usuń dane.

Jeśli musisz usunąć dane tylko po stronie "wiele" relacji, możesz utworzyć i uruchomić kwerendę usuwającą bez konieczności zmieniania relacji.

Aby sprawdzić, które rekordy znajdują się na stronie "jedno" i "wiele" relacji, na karcie Narzędzia bazy danych w grupie relacje kliknij pozycję relacje. Na karcie relacje są wyświetlane tabele w bazie danych i relacje. Każda relacja jest przedstawiana jako linia łącząca tabele między polami.

Na poniższej ilustracji przedstawiono typową relację. Większość relacji w bazie danych nie jest dostępna po stronie "jednego" i po stronie "wiele". Diagram relacji oznacza stronę "jeden" z cyfrą o jednej (1), a po niej po stronie "wiele" z symbolem nieskończoność ().

Relacja między dwiema tabelami

Po usunięciu rekordów po stronie "dowolny" relacji wszystkie powiązane rekordy są usuwane również po stronie "wiele" relacji. Jednak usunięcie rekordów po stronie "wiele" relacji powoduje, że zazwyczaj nie usuwasz rekordów po stronie "Pojedyncza".

Program Access automatycznie wymusza także zestaw reguł o nazwie więzy integralności. Te reguły gwarantują, że klucze obce w bazie danych zawierają odpowiednie wartości. Klucz obcy jest kolumną, której wartości pasują do wartości w kolumnie klucza podstawowego innej tabeli.

Edytowanie relacji

Wykonaj te czynności tylko wtedy, gdy chcesz usunąć dane ze stron "jedno" i "wiele" relacji.

  1. Na karcie Narzędzia bazy danych w grupie Relacje kliknij pozycję Relacje.

  2. Kliknij prawym przyciskiem myszy relację (linię) łączącą tabele, których dotyczy operacja usuwania, a następnie w menu skrótów kliknij polecenie Edytuj relację .

  3. Upewnij się, że w oknie dialogowym Edytowanie relacji jest zaznaczone pole wyboru Wymuszaj więzy integralności .

  4. Zaznacz pole wyboru Kaskadowo usuń rekordy pokrewne .

    Uwaga:  Do momentu ponownego wyłączenia tej właściwości usunięcie rekordu po stronie "dowolny" relacji spowoduje usunięcie wszystkich powiązanych rekordów po stronie "wiele" relacji.

  5. Kliknij przycisk OK, zamknij okienko relacje , a następnie przejdź do następnego zestawu kroków.

Usuwanie relacji

  1. Jeśli jeszcze tego nie zrobiono, Otwórz okienko relacje .

  2. Na karcie Narzędzia bazy danych w grupie Relacje kliknij pozycję Relacje.

    Zanotuj pola związane z relacją, aby móc przywrócić relację po usunięciu danych.

  3. Kliknij prawym przyciskiem myszy relację (linię) łączącą tabele, których dotyczy operacja usuwania, a następnie w menu skrótów kliknij polecenie Usuń .

Uwaga:  Aby przywrócić relację, wykonaj powyższe czynności, aby otworzyć okienko relacje , a następnie przeciągnij pole klucza podstawowego z tabeli "one" i upuść je w polu klucza obcego w tabeli "wiele". Zostanie wyświetlone okno dialogowe Edytowanie relacji . Jeśli stary związek wymusza więzy integralności, wybierz pozycję Wymuszaj więzy integralności, a następnie kliknij pozycję Utwórz. W przeciwnym razie po prostu kliknij pozycję Utwórz.

Początek strony

Przykładowe kryteria dla kwerend wybierających

W poniższej tabeli wymieniono niektóre Przykładowe kryteria, których można używać w kwerendach wybierających w celu upewnienia się, że usuwane są tylko dane, które mają zostać usunięte. W poniższych przykładach użyto symboli wieloznacznych.

Kryteria

Wynik

> 234

Zwraca wszystkie liczby większe niż 234. Aby znaleźć wszystkie liczby mniejsze niż 234, należy użyć wyrażenia < 234.

>= "Misztal"

Zwraca wszystkie rekordy od nazwiska Misztal do końca alfabetu.

Between #2/2/2010 # and #12/1/2010 #

Zwraca daty z 2-lut-2010 do 1-gru-2010 (ANSI-89). Jeśli w bazie danych są używane symbole wieloznaczne ANSI-92, należy użyć cudzysłowów pojedynczych (') zamiast znaków numeru (#). Przykład: od "2/2/2010" do "12/1/2010".

Not "Niemcy"

Znajduje wszystkie rekordy, w których dokładna zawartość pola nie jest równa „Niemcy”. Kryterium zwróci rekordy zawierające dodatkowe znaki oprócz wyrazu „Niemcy”, na przykład „Niemcy (euro)” lub „Europa (Niemcy)”.

Not "T*"

Znajduje wszystkie rekordy oprócz rekordów zaczynających się od litery T. Jeśli w bazie danych jest używany zestaw symboli wieloznacznych ANSI-92, należy użyć znaku procentu (%) zamiast gwiazdki (*).

Not "*t"

Znajduje wszystkie rekordy, które nie kończą się literą t. Jeśli w bazie danych jest używany zestaw symboli wieloznacznych ANSI-92, należy użyć znaku procentu (%) zamiast gwiazdki (*).

In(Kanada,USA)

Znajduje na liście wszystkie rekordy zawierające wyrazy Kanada lub USA.

Like "[A-D]*"

W polu tekstowym znajduje wszystkie rekordy, które zaczynają się od litery od A do D. Jeśli w bazie danych jest używany zestaw znaków wieloznacznych ANSI-92, użyj znaku procentu (%). zamiast gwiazdki (*).

Like "*ar*"

Znajduje wszystkie rekordy zawierające sekwencję liter „ar”. Jeśli w bazie danych jest używany zestaw symboli wieloznacznych ANSI-92, należy użyć znaku procentu (%) zamiast gwiazdki (*).

Like "Maison Dewe?"

Znajduje wszystkie rekordy, które zaczynają się od wyrazu „Maison” i zawierają drugi pięcioliterowy ciąg znaków, w którym pierwsze 4 litery to „Dewe”, a ostatnia litera jest nieznana. Jeśli w bazie danych jest używany zestaw symboli wieloznacznych ANSI-92, należy użyć znaku podkreślenia (_) zamiast znaku zapytania (?).

#2/2/2010 #

Znajduje wszystkie rekordy dla 2 lutego 2010 r. Jeśli w bazie danych jest używany zestaw znaków wieloznacznych ANSI-92, ujmij go w cudzysłów pojedynczy zamiast krzyżyka (' 2/2/2010 ').

< Date() - 30

Zwraca wszystkie daty starsze niż 30 dni za pomocą funkcji Date.

Date()

Zwraca wszystkie rekordy zawierające dzisiejszą datę za pomocą funkcji Date.

Between Date() And DateAdd("M";3;Date())

Zwraca wszystkie rekordy między dzisiejszą datą a datą późniejszą, korzystając z funkcji Date i DateAdd .

Is Null

Zwraca wszystkie rekordy zawierające wartość null (pustą lub niezdefiniowaną).

Is Not Null

Zwraca wszystkie rekordy zawierające dowolną wartość (która nie jest wartością null).

""

Zwraca wszystkie rekordy zawierające ciąg znaków o zerowej długości. Ciągi znaków o zerowej długości są używane, gdy trzeba dodać wartość do wymaganego pola, ale jeszcze nie wiesz, co to jest rzeczywista wartość. Pole może na przykład wymagać numeru faksu, lecz niektórzy klienci mogą nie mieć faksu. W takim przypadku zamiast wprowadzania numeru należy wprowadzić parę podwójnych cudzysłowów bez spacji między nimi ("").

Początek strony

Porady dotyczące rozwiązywania problemów

Dlaczego jest wyświetlany ten komunikat o błędzie i jak można poprawić ten błąd?

W przypadku tworzenia zapytania usuwającego przy użyciu wielu tabel Właściwość unikatowe rekordy kwerendy jest ustawiona na nie, program Access wyświetli komunikat o błędzie. Nie można usunąć danych z określonych tabel po uruchomieniu zapytania.

Aby usunąć ten problem, należy ustawić właściwość Rekordy unikatowe zapytania na Tak.

  1. Otwórz zapytanie usuwające w widoku projektowania.

  2. Jeśli arkusz właściwości zapytania jest zamknięty, naciśnij klawisz F4, aby go otworzyć.

  3. Kliknij projektanta zapytań, aby wyświetlić właściwości zapytania (a nie właściwości pola).

  4. W arkuszu właściwości zapytania odszukaj właściwość Unikatowe rekordy i ustaw ją na Tak.

Zatrzymywanie blokowania zapytania przez tryb wyłączony

Domyślnie po otwarciu bazy danych dla komputerów stacjonarnych, które nie zostały wybrane do zaufania lub które nie znajdują się w zaufanej lokalizacji, program Access blokuje działanie wszystkich zapytań akcji.

Jeśli użytkownik próbuje uruchomić zapytanie funkcjonalne i wydaje się, że nic się nie dzieje, należy sprawdzić, czy na pasku stanu programu Access jest wyświetlany następujący komunikat:

Akcja lub zdarzenie zostało zablokowane przez tryb wyłączony.

Po wyświetleniu tego komunikatu wykonaj następujące czynności, aby włączyć zablokowaną zawartość:

  • Na pasku komunikatów Ostrzeżenie o zabezpieczeniach kliknij pozycję Włącz zawartość, a następnie ponownie uruchom zapytanie.

Początek strony

Uwaga:  Ta strona została przetłumaczona automatycznie i może zawierać błędy gramatyczne lub nieścisłości. Chcemy, aby ta zawartość była dla Ciebie przydatna. Czy możesz dać nam znać, czy te informacje były pomocne? Oto angielskojęzyczny artykuł do wglądu.

Rozwijaj umiejętności związane z pakietem Office
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów pakietu Office

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×