Tworzenie i uruchamianie zapytania aktualizującego

Dotyczy
Access dla Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Zapytania aktualizujące w bazach danych programu Access są używane w sytuacji, gdy trzeba dodać, zmienić lub usunąć informacje z istniejącego rekordu. Zapytania aktualizujące można traktować jako bardziej zaawansowaną formę okna dialogowego Znajdowanie i zamienianie. Za pomocą zapytania aktualizującego nie można dodawać nowych rekordów do bazy danych ani usuwać rekordów z bazy danych.

Do dodawania nowych rekordów do bazy danych służy kwerenda dołączająca, a do usuwania całych rekordów z bazy można użyć kwerendy usuwającej.

W tym artykule

Omówienie

Oto podobieństwa i różnice między oknem dialogowym Znajdowanie i zamienianie a kwerendą aktualizującą:

Podobnie do okna dialogowego Znajdowanie i zamienianie kwerenda aktualizująca umożliwia określenie wartości przeznaczonej do zamiany oraz nowej wartości.

W przeciwieństwie do okna dialogowego Znajdowanie i zamienianie kwerenda aktualizująca umożliwia:

  • używanie kryteriów niezależnych od wartości, która ma zostać zamieniona;
  • używanie dużej liczby rekordów w jednym przebiegu;
  • modyfikowanie rekordów w kilku tabelach równocześnie.

Ograniczenia dotyczące pól, które można aktualizować

Kwerendy aktualizującej nie można używać do aktualizacji danych znajdujących się w polach następujących typów:

  • Pola obliczeniowe Wartości w polach obliczeniowych nie są trwale przechowywane w tabelach. Po obliczeniu w programie Access te wartości są przechowywane tylko w pamięci tymczasowej komputera. Ponieważ pola obliczeniowe nie mają trwałej lokalizacji przechowywania, nie można ich aktualizować.

  • Pola będące wynikiem działania kwerendy podsumowującej lub kwerendy krzyżowej Wartości znajdujące się w polach tego typu są wynikiem obliczeń, dlatego nie można ich aktualizować przy użyciu kwerendy aktualizującej.

  • Pola typu Autonumerowanie Zgodnie z projektem wartości w polach Autonumerowanie zmieniają się tylko po dodaniu rekordu do tabeli.

  • Pola w kwerendach o unikatowych wartościach i kwerendach rekordów unikatowych Wartości w takich zapytaniach są podsumowywane. Niektóre z nich reprezentują pojedynczy rekord, a inne — kilka rekordów. Aktualizacja jest niemożliwa, ponieważ nie ma możliwości określenia, które rekordy zostały wykluczone jako duplikaty, przez co nie można zaktualizować wszystkich wymaganych rekordów. To ograniczenie dotyczy używania kwerendy aktualizującej lub próby ręcznej aktualizacji danych przez wprowadzenie wartości w formularzu lub arkuszu danych.

  • Pola w zapytaniu składającym Nie można aktualizować danych z pól w zapytaniu składającym, ponieważ każdy rekord, który występuje w co najmniej dwóch źródłach danych, występuje tylko raz w wyniku zapytania składającego. Ponieważ niektóre zduplikowane rekordy są usuwane z wyników, program Access nie może zaktualizować wszystkich wymaganych rekordów.

  • Pola będące kluczami podstawowymi W niektórych przypadkach, na przykład w przypadku użycia pola klucza podstawowego w relacji między tabelami, nie można zaktualizować pola za pomocą kwerendy, dopóki w tej relacji nie zostanie ustawione automatyczne, kaskadowe wprowadzanie aktualizacji.

    Uwaga

    W przypadku aktualizacji kaskadowych program Access automatycznie aktualizuje wartości klucza obcego po zmianie wartości klucza podstawowego w tabeli nadrzędnej.

Początek strony

Korzystanie z kwerendy aktualizującej

Podczas tworzenia kwerendy aktualizującej zaleca się utworzenie w pierwszej kolejności kwerendy wybierającej, określającej rekordy przeznaczone do aktualizacji, a następnie przekonwertowanie jej na kwerendę aktualizującą, którą można uruchomić w celu zaktualizowania rekordów. Zaznaczając najpierw dane, możesz sprawdzić, czy aktualizujesz odpowiednie rekordy, zanim faktycznie zmienisz dane.

Porada

Przed uruchomieniem kwerendy aktualizującej należy wykonać kopię zapasową bazy danych. Wyników działania kwerendy aktualizującej nie można cofnąć, a utworzenie kopii zapasowej pozwoli odwrócić zmiany w razie potrzeby.

Jak utworzyć kopię zapasową bazy danych

  1. Kliknij kartę Plik , a następnie wybierz pozycję Zapisz jako.
  2. Po prawej stronie w obszarze Zaawansowane wybierz pozycję Wykonaj kopię zapasową bazy danych.
  3. W oknie dialogowym Zapisywanie kopii zapasowej jako określ nazwę i lokalizację kopii zapasowej, a następnie wybierz pozycję Zapisz.
    Program Access zamknie oryginalny plik, utworzy kopię zapasową, a następnie ponownie otworzy oryginalny plik.
    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.

W tej sekcji

Krok 1. Tworzenie kwerendy wybierającej w celu określenia rekordów do zaktualizowania

  1. Otwórz bazę danych zawierającą rekordy, które chcesz zaktualizować.

  2. Na karcie Tworzenie w grupie Zapytania wybierz pozycję Projekt zapytania.

  3. Wybierz kartę Tabele .

  4. Zaznacz tabelę lub tabele zawierające rekordy, które chcesz zaktualizować, wybierz pozycję Dodaj, a następnie wybierz pozycję Zamknij.
    Tabela lub tabele pojawią się w projektancie kwerend, przy czym w oknie zostaną wyświetlone wszystkie pola poszczególnych tabel. Na rysunku pokazano typową tabelę w projektancie kwerend.
    Tabela w projektancie kwerend
    Tabela wyświetlana w projektancie zapytań
    Siatka projektu kwerendy

  5. Kliknij dwukrotnie pola, które chcesz zaktualizować w oknach tabel. Wybrane pola zostaną wyświetlone w wierszu Pole w siatce projektu kwerendy.
    Można dodawać po jednym polu na kolumnę siatki projektu kwerendy.
    Aby szybko dodać wszystkie pola w tabeli, kliknij dwukrotnie gwiazdkę (*) u góry listy pól w oknie tabeli. Na poniższym rysunku pokazano siatkę projektu kwerendy z dodanymi wszystkimi polami.
    Kwerenda z dodanymi wszystkim polami tabeli

  6. Aby ograniczyć wyniki kwerendy na podstawie wartości pól, w siatce projektu kwerendy w wierszu Kryteria wprowadź odpowiednie kryteria ograniczające.
    Tabela przykładowych kryteriów
    W poniższej tabeli pokazano przykładowe kryteria i wyjaśniono ich wpływ na wyniki kwerendy.

    Uwaga

    W wielu przykładach w tej tabeli zastosowano symbole wieloznaczne, które zwiększają elastyczność i możliwości kwerend.

    Kryteria Wynik
    >234 Zwraca wszystkie liczby większe niż 234. Aby znaleźć wszystkie liczby mniejsze niż 234, użyj liczby < 234.
    >="Kajhen" Zwraca wszystkie rekordy od nazwiska Misztal do końca alfabetu.
    Between #2020-02-02# And #2020-12-01# Zwraca daty od 2-lut-17 do 1-gru-17 (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: Between '2020-02-02' And '2020-01-12' .
    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 rozpoczynających się od ciągu 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 typu Tekst znajduje wszystkie rekordy zaczynające się od liter z zakresu od A do D. Jeśli w bazie danych jest używany zestaw symboli wieloznacznych ANSI-92, należy użyć 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/2020# Znajduje wszystkie rekordy z dnia 2 lutego 2020 r. Jeśli w bazie danych jest używany zestaw symboli wieloznacznych ANSI-92, należy ująć datę w cudzysłowy pojedyncze (') zamiast w znaki numeru (#). na przykład ('2020-02-02').
    < 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ą o trzy miesiące za pomocą funkcji Date i DateAdd.
    Is Null Zwraca wszystkie rekordy zawierające wartość null (pustą lub niezdefiniowaną).
    Is Not Null Zwraca wszystkie rekordy zawierające jakąkolwiek wartość.
    "" Zwraca wszystkie rekordy zawierające ciąg znaków o zerowej długości. Ciąg znaków o zerowej długości jest używany wtedy, gdy trzeba dodać wartość do wymaganego pola, lecz rzeczywista wartość nie jest jeszcze znana. Pole może na przykład wymagać numeru faksu, lecz niektórzy klienci mogą nie mieć faksu. W takim przypadku zamiast numeru należy wprowadzić dwa znaki podwójnego cudzysłowu bez spacji między nimi ("").
  7. Na karcie Projekt zapytania w grupie Wyniki wybierz pozycję Uruchom.

  8. Sprawdź, czy kwerenda zwraca rekordy, które chcesz zaktualizować.

  9. Aby usunąć pola, które nie mają zostać uwzględnione w projekcie kwerendy, zaznacz je i naciśnij klawisz DELETE.

  10. Aby dodać pola do projektu kwerendy, przeciągnij dodatkowe pola na siatkę projektu kwerendy.

Krok 2. Aktualizowanie rekordów

  1. Na karcie Projekt zapytania w grupie Typ zapytania wybierz pozycję Aktualizuj.
    W tej procedurze przedstawiono, jak zmienić kwerendę wybierającą na aktualizującą. Po wykonaniu tych czynności program Access doda wiersz Aktualizacja do w siatce projektu kwerendy. Na poniższej ilustracji przedstawiono kwerendę aktualizującą, która zwraca wszystkie składniki majątku zakupione po 5 stycznia 2005 i zmienia lokalizację na „Magazyn 3” dla wszystkich rekordów spełniających ten warunek.
    Kwerenda aktualizująca z jednym kryterium aktualizacji

  2. Zlokalizuj pole zawierające dane, które chcesz zmienić, a następnie wpisz wyrażenie (kryteria zmiany) w wierszu Aktualizacja do dla tego pola.
    W wierszu Aktualizacja do można użyć dowolnych prawidłowych wyrażeń.
    Tabela przykładowych wyrażeń
    W poniższej tabeli pokazano kilka przykładowych wyrażeń i wyjaśniono, w jaki sposób zmieniają one dane.

    Wyrażenie Wynik
    "Sprzedawca" W polu Krótki tekst zmienia wartość tekstową na wartość Sprzedawca.
    #8/10/20# W polu Typu data/godzina zmienia wartość daty na 10-sie-20.
    Tak W polu typu Tak/Nie zmienia wartość Nie na wartość Tak.
    "NC" & [NumerCzęści] Dodaje oznaczenie „NC” na początku każdego określanego numeru części.
    [CenaJednostkowa] * [Ilość] Mnoży wartości w polach o nazwach CenaJednostkowa i Ilość.
    [Fracht] * 1,5 Zwiększa wartości w polu o nazwie Fracht o 50 procent.
    DSum("[Ilość] * [CenaJednastkowa]",
    "Szczegóły zamówienia", "[IdentyfikatorProduktu]=" & [IdentyfikatorProduktu])
    Jeśli wartości identyfikatorów produktów w bieżącej tabeli odpowiadają wartościom identyfikatorów produktów w tabeli o nazwie Szczegóły zamówień, to wyrażenie aktualizuje sumy sprzedaży, mnożąc wartości w polu o nazwie Ilość przez wartości w polu o nazwie CenaJednostkowa. W wyrażeniu jest używana funkcja DSum, ponieważ może ona działać na wielu tabelach i polach tabeli.
    Right([KodPocztowyOdbiorcy];5) Obcina (usuwa) skrajne lewe znaki w ciągu tekstowym lub liczbowym i pozostawia pięć skrajnych prawych znaków.
    IIf(IsNull([CenaJednostkowa]);0;[CenaJednostkowa]) Zmienia wartość Null (wartość nieznaną lub niezdefiniowaną) na wartość zero (0) w polu o nazwie CenaJednostkowa.
  3. Na karcie Projekt zapytania w grupie Wyniki wybierz pozycję Uruchom.
    Zostanie wyświetlony komunikat alertu.

  4. Aby uruchomić zapytanie i zaktualizować dane, wybierz pozycję Tak.

    Uwaga

    Po uruchomieniu kwerendy można niekiedy zauważyć brak niektórych pól w zestawie wyników. Jeśli kwerenda zawiera pola, które nie są aktualizowane, program Access domyślnie nie wyświetla tych pól w wynikach. Użytkownik mógł na przykład dołączyć pola identyfikatorów z dwóch tabel, aby zagwarantować, że kwerenda zidentyfikuje i zaktualizuje właściwe rekordy. Jeśli te pola nie są aktualizowane, program Access nie wyświetla ich w wynikach.

Początek strony

Aktualizowanie danych między tabelami

Podczas aktualizacji danych między tabelami należy pamiętać o następującej zasadzie: typy danych pól źródłowych i docelowych muszą do siebie pasować lub być ze sobą zgodne.

W przypadku aktualizacji danych między tabelami i używania zgodnych (zamiast pasujących) typów danych program Access konwertuje typy danych tych pól w tabeli docelowej. Z tego powodu niektóre dane w polach docelowych mogą być obcinane (usuwane). W sekcji Ograniczenia dotyczące konwersji typów danych znajduje się lista dozwolonych i niedozwolonych sposobów konwersji danych. W tabeli w tej sekcji znajduje się także opis sytuacji, w których konwersja jednego typu danych może zmienić lub usunąć niektóre lub wszystkie dane w polu, a także informacje o tym, które dane mogą zostać usunięte.

Proces aktualizacji danych między tabelami obejmuje następujące ogólne kroki:

  1. Tworzenie kwerendy aktualizującej i dodawanie do niej tabeli źródłowej i docelowej.
  2. Łączenie tych tabel za pomocą pól, które zawierają pokrewne informacje.
  3. Dodawanie nazw pól docelowych w wierszu Pole w siatce projektu kwerendy.
  4. Dodaj nazwy pól źródłowych do wiersza Aktualizacja do siatki projektu zapytania, używając następującej składni: [source_table]. [source_field].

W procedurze opisanej w tej sekcji założono, że są używane dwie podobne tabele. W tym przykładzie tabela Klienci znajduje się w odziedziczonej bazie danych, która zawiera nowsze dane niż tabela Kontrahenci. Jak widać, niektóre nazwiska i adresy kierowników uległy zmianie. Z tego powodu należy zaktualizować tabelę Kontrahenci danymi z tabeli Klienci.

Tabela Klienci

Identyfikator klienta Nazwa Adres Miasto Województwo Kod pocztowy Kraj/region Telefon Kontakt
1 Firma A ul. Klonowa 15 Szczecin Zachodniopomorskie 12345 Polska (012) 34-56-789 Tomasz Bochenek
2 Firma B ul. Studzińskiego 52 Pruszków Mazowieckie 23456 Polska (012) 34-56-780 Ewa Ciesielska
3 Coho Winery ul. Niezapominajki 75 Poznań Wielkopolskie 34567 Polska (123) 45-67-891 Dariusz Korzun
4 Firma D ul. Złota 1 Kraków Małopolskie 09-876 Polska (012) 34-56-782 Marek Rolecki
5 Firma E ul. Kosmonautów 2 Gdańsk 56789 Polska (012) 34-56-783 Marcin Kretowicz
6 Firma F ul. Astronautów 31 Wronki Wielkopolskie 34567 Polska (012) 34-56-784 Jacek Maśliński
7 Firma G Truskawkowa 5 Rzeszów Podkarpackie 87654 Polska (012) 34-56-785 Roman Stachnio
8 Firma H ul. Microsoft 3 Białystok Podlaskie 31415 Polska (012) 34-56-789 Beata Sapieżyńska
9 Firma I ul. Microsoft 4 Białystok Podlaskie 31415 Polska (012) 34-56-780 Jacek Myrcha

Tabela Kontrahenci

Identyfikator kontrahenta Nazwa Adres Miasto Województwo Kod pocztowy Kraj lub region Telefon Kierownik
1 Firma A ul. Klonowa 15 Szczecin Zachodniopomorskie 12345 Polska (012) 34-56-788 Wojciech Czupta
2 Firma B ul. Studzińskiego 52 Pruszków Mazowieckie 23456 Polska (012) 34-56-780 Ewa Ciesielska
3 Coho Winery ul. Niezapominajki 75 Poznań Wielkopolskie 34567 Polska (123) 45-67-891 Dariusz Korzun
4 Firma D ul. Złota 1 Kraków Małopolskie 09-876 Polska (012) 34-56-782 Marek Rolecki
5 Firma E ul. Kosmonautów 2 Gdańsk 56789 Polska (012) 34-56-783 Marcin Kretowicz
6 Firma F ul. Astronautów 31 Wronki Wielkopolskie 34567 Polska (012) 34-56-789 Aneta Olecka
7 Firma G ul. Fistaszkowa 67 Rzeszów Podkarpackie 87654 Polska (012) 34-56-789 Aneta Wiśniewska
8 Firma H ul. Microsoft 3 Białystok Podlaskie 31415 Polska (012) 34-56-789 Tomasz Bator
9 Firma I ul. Microsoft 4 Białystok Podlaskie 31415 Polska (012) 34-56-780 Jacek Myrcha

Podczas wykonywania czynności opisanych w tym artykule należy pamiętać, że chociaż typy danych dla każdego pola tabeli nie muszą do siebie pasować, jednak muszą być zgodne. Program Access musi mieć możliwość przekonwertowania danych w tabeli źródłowej na typ, którego może używać tabela docelowa. W niektórych przypadkach w wyniku procesu konwersji część danych może zostać usunięta. Więcej informacji o ograniczeniach konwertowania typów danych można znaleźć w sekcji Ograniczenia dotyczące konwersji typów danych.

Tworzenie i uruchamianie kwerendy aktualizującej

Uwaga

W poniższej procedurze założono, że są używane poprzednie tabele przykładowe. Procedurę można dostosować zależnie od używanych danych.

  1. Na karcie Tworzenie w grupie Zapytania wybierz pozycję Projekt zapytania.
  2. Wybierz pozycję Dodaj tabele.
  3. Kliknij dwukrotnie tabele źródłowe i docelowe, aby dodać je do zapytania. Obie tabele zostaną wyświetlone w oknie w projektancie kwerend.
  4. W większości przypadków program Access automatycznie tworzy sprzężenia między pokrewnymi polami w kwerendzie. Aby ręcznie utworzyć sprzężenia pól zawierających pokrewne dane, przeciągnij pokrewne pole z jednej tabeli do odpowiedniego pola w drugiej tabeli.
    W przypadku powyższych przykładowych tabel można na przykład przeciągnąć pole Identyfikator klienta w pierwszej tabeli na pole Identyfikator kontrahenta w drugiej tabeli. Program Access utworzy relację między tymi polami w obu tabelach i utworzy sprzężenie między rekordami.
  5. Na karcie Projekt zapytania w grupie Typ zapytania wybierz pozycję Aktualizuj.
  6. W tabeli docelowej kliknij dwukrotnie pola, które chcesz zaktualizować. Każde pole zostanie wyświetlone w wierszu Pole w siatce projektu kwerendy.
    W przypadku przykładowych tabel można dodać wszystkie pola z wyjątkiem pola Identyfikator kontrahenta. Warto zauważyć, że nazwa tabeli docelowej jest wyświetlana w wierszu Tabela w siatce projektu.
  7. W wierszu Update To (Aktualizacja do ) zapytania w każdej kolumnie zawierającej pole docelowe dodaj nazwę tabeli źródłowej i pole tabeli źródłowej odpowiadające polu w tabeli docelowej i upewnij się, że jest używana ta składnia: [Tabela].[ Pole], gdzie nazwy tabel i pól są ujęte w nawiasy kwadratowe, a nazwy tabel i pól oddziela się kropką.
    Na rysunku pokazano część siatki projektu dla przykładowych tabel. Warto zwrócić uwagę na składnię nazw tabel i pól w wierszu Aktualizacja do.
    Kwerenda aktualizująca jedną tabelę danymi z drugiej tabeli
    Podczas wykonywania kroków opisanych w tej sekcji należy pamiętać, że nazwy tabel i pól w wierszu Aktualizacja do muszą zostać wpisane zgodnie ze znakami interpunkcyjnymi oryginalnych nazw tabeli pól. Nie trzeba uwzględniać wielkości liter.
  8. Na karcie Projekt zapytania w grupie Wyniki wybierz pozycję Uruchom.
  9. Po wyświetleniu monitu o potwierdzenie aktualizacji wybierz pozycję Tak.

Ograniczenia dotyczące konwersji typów danych

W poniższej tabeli wymieniono typy danych dostępne w programie Access, wyjaśniono wszystkie ograniczenia dotyczące konwertowania typów danych, a także pokrótce opisano ewentualne dane, które mogą zostać utracone podczas konwersji.

Konwersja na ten typ Z tego typu Zmiany lub ograniczenia
Krótki tekst Długi tekst Program Access usuwa wszystkie znaki oprócz pierwszych 255 znaków.
Liczba Bez ograniczeń.
Data/Godzina Bez ograniczeń.
Waluta Bez ograniczeń.
Autonumerowanie Bez ograniczeń.
Tak/Nie Wartość -1 (Tak w polu typu Tak/Nie) jest konwertowana na Tak. Wartość 0 (Nie w polu typu Tak/Nie) jest konwertowana na Nie.
Hiperłącze Program Access obcina łącza dłuższe niż 255 znaków.
Długi tekst Krótki tekst Bez ograniczeń.
Liczba Bez ograniczeń.
Data/Godzina Bez ograniczeń.
Waluta Bez ograniczeń.
Autonumerowanie Bez ograniczeń.
Tak/Nie Wartość -1 (Tak w polu typu Tak/Nie) jest konwertowana na Tak. Wartość 0 (Nie w polu typu Tak/Nie) jest konwertowana na Nie.
Hiperłącze Bez ograniczeń.
Liczba Krótki tekst Tekst musi zawierać liczby, prawidłowe waluty i separatory miejsc dziesiętnych. Liczba znaków w polu tekstowym nie może przekraczać rozmiaru ustawionego dla pola typu Liczba.
Długi tekst Pole Długi tekst musi zawierać tylko tekst oraz prawidłowe waluty i separatory dziesiętne. Liczba znaków w polu Długi tekst musi nie mieścić się w rozmiarze ustawionym dla pola typu Liczba.
Liczba, ale o innym rozmiarze pola lub precyzji Wartości nie mogą być większe ani mniejsze od wartości, które może przechowywać nowe pole. Zmiana precyzji może spowodować, że program Access zaokrągli niektóre wartości.
Data/Godzina To, jakie daty można przekonwertować, zależy od rozmiaru pola liczbowego. Należy pamiętać, że program Access przechowuje wszystkie daty w postaci liczb kolejnych i wartości dat są przechowywane jako liczby całkowite o podwójnej dokładności.
W programie Access data 30 grudnia 1899 jest traktowana jako data 0. Daty spoza zakresu od 18 kwietnia 1899 do 11 września 1900 przekraczają rozmiar pola typu Bajt. Daty spoza zakresu od 13 kwietnia 1810 do 16 września 1989 przekraczają rozmiar pola typu Liczba całkowita.
Aby zmieścić wszystkie możliwe daty, należy ustawić właściwość Rozmiar pola typu Liczba na Liczba całkowita długa lub większą wartość.
Waluta Wartości nie mogą przekraczać od góry ani od dołu limitu rozmiaru ustawionego dla pola. Można na przykład przekonwertować pole waluty na pole typu Liczba całkowita tylko wtedy, gdy te wartości są większe niż 255 i nie przekraczają 32 767.
Autonumerowanie Wartości muszą się mieścić w limicie rozmiaru ustawionym dla pola.
Tak/Nie Wartości „Tak” są konwertowane na -1. Wartości „Nie” są konwertowane na 0.
Data/Godzina Krótki tekst Oryginalny tekst musi być rozpoznawalną datą lub kombinacją daty/godziny. Na przykład 18 sty 2020.
Długi tekst Oryginalny tekst musi być rozpoznawalną datą lub kombinacją daty/godziny. Na przykład 18 sty 2020.
Liczba Wartość musi należeć do przedziału od -657 434 do 2 958 465,99998843.
Waluta Wartość musi należeć do przedziału od -657 434 zł do 2 958 465,9999 zł.
Autonumerowanie Wartość musi być większa od -657 434 i mniejsza od 2 958 466.
Tak/Nie Wartość -1 (Tak) jest konwertowana na 29 grudnia 1899. Wartość 0 (Nie) jest konwertowana na północ (00:00).
Waluta Krótki tekst Tekst musi się składać z liczb i prawidłowych separatorów.
Długi tekst Tekst musi się składać z liczb i prawidłowych separatorów.
Liczba Bez ograniczeń.
Data/Godzina Bez ograniczeń, ale program Access może zaokrąglić wartość.
Autonumerowanie Bez ograniczeń.
Tak/Nie Wartość -1 (Tak) jest konwertowana na 1 zł. Wartość 0 (Nie) jest konwertowana na 0 zł.
Autonumerowanie Krótki tekst Niedozwolone, jeśli pole typu Autonumerowanie służy jako klucz podstawowy.
Długi tekst Niedozwolone, jeśli pole typu Autonumerowanie służy jako klucz podstawowy.
Liczba Niedozwolone, jeśli pole typu Autonumerowanie służy jako klucz podstawowy.
Data/Godzina Niedozwolone, jeśli pole typu Autonumerowanie służy jako klucz podstawowy.
Waluta Niedozwolone, jeśli pole typu Autonumerowanie służy jako klucz podstawowy.
Tak/Nie Niedozwolone, jeśli pole typu Autonumerowanie służy jako klucz podstawowy.
Tak/Nie Krótki tekst Oryginalny tekst musi się składać z pozycji Tak, Nie, Prawda, Fałsz, Włączony lub Wyłączony.
Długi tekst Oryginalny tekst musi się składać z pozycji Tak, Nie, Prawda, Fałsz, Włączony lub Wyłączony.
Liczba Zero lub wartość Null są konwertowane na wartość Nie, wszystkie inne wartości są konwertowane na wartość Tak.
Data/Godzina Wartość Null lub 00:00:00 jest konwertowana na wartość Nie, wszystkie inne wartości są konwertowane na wartość Tak.
Waluta Zero i wartość Null są konwertowane na wartość Nie, wszystkie inne wartości są konwertowane na wartość Tak.
Autonumerowanie Wszystkie wartości są konwertowane na wartość Tak.
Hiperłącze Krótki tekst Jeśli oryginalny tekst zawiera prawidłowy adres internetowy, na przykład adatum.com, www.adatum.com lub http://www.adatum.com, program Access przekonwertuje tekst na hiperlink. Inne wartości są konwertowane „pozornie” w taki sposób, że widać podkreślony tekst, a kursor myszy zmienia się po wskazaniu łącza — ale łącza nie działają. Tekst może zawierać dowolny prawidłowy protokół sieci Web, w tym http://, gopher://, telnet://, ftp:// i wais://.
Długi tekst Zobacz poprzednią pozycję. Są stosowane te same ograniczenia.
Liczba Niedozwolone, jeśli pole typu Liczba jest częścią relacji. Jeśli oryginalna wartość ma postać prawidłowego adresu IP (cztery wystąpienia trzech cyfr rozdzielone kropkami: nnn.nnn.nnn.nnn), a liczby występują w istniejącym adresie internetowym, wynikiem konwersji jest prawidłowe łącze. W przeciwnym razie program Access dołącza http:// na początku każdej wartości, a otrzymane linki są nieprawidłowe.
Data/godzina Program Access dołącza http:// na początku każdego adresu, ale otrzymane linki prawie nigdy nie będą działać.
Waluta Program Access dołącza http:// na początku każdej wartości, ale podobnie jak daty, otrzymane linki prawie nigdy nie będą działać.
Autonumerowanie Niedozwolone, jeśli pole typu Autonumerowanie jest częścią relacji. Program Access dołącza http:// na początku każdej wartości, ale otrzymane linki prawie nigdy nie będą działać.
Tak/Nie Program Access konwertuje wszystkie wartości Tak na -1, a wszystkie wartości Nie na 0 i dołącza http:// na początku każdej wartości. Otrzymane łącza nie działają.

Początek strony

Zatrzymywanie blokowania kwerendy przez tryb wyłączony

Jeśli po uruchomieniu kwerendy funkcjonalnej 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.

Domyślnie program Access wyłącza wszystkie kwerendy funkcjonalne (aktualizujące, dołączające, usuwające i tworzące tabele), chyba że baza danych znajduje się w zaufanej lokalizacji lub jest podpisana i zaufana. Istnieje jednak możliwość włączenia kwerendy dla bieżącej sesji bazy danych przez kliknięcie przycisku Włącz zawartość na pasku komunikatów.

Początek strony

Wersja SQL: instrukcja UPDATE

W przypadku posiadania umiejętności w zakresie obsługi baz danych SQL można także wprowadzić instrukcję UPDATE przy użyciu widoku SQL. Aby użyć widoku SQL, należy utworzyć nową, pustą kwerendę, a następnie przejść do tego widoku.

W tej sekcji przedstawiono składnię i przykład zastosowania instrukcji UPDATE.

Składnia

UPDATE tabela SET newvalue WHERE criteria;

Instrukcja UPDATE zawiera następujące segmenty:

Segment Opis
tabela Nazwa tabeli zawierającej dane, które mają zostać zmodyfikowane.
nowa_wartość Wyrażenie określające wartość, która ma zostać umieszczona w konkretnym polu aktualizowanych rekordów.
kryteria Wyrażenie określające, które rekordy będą aktualizowane. Aktualizacja będzie dotyczyła wyłącznie rekordów spełniających podane warunki.

Uwagi

Instrukcja UPDATE jest szczególnie przydatna w sytuacji, gdy należy zmodyfikować wiele rekordów lub jeśli rekordy, które mają zostać zmienione, znajdują się w wielu tabelach.

W jednej operacji można zmodyfikować wiele pól. W przykładzie poniżej dla spedytorów w Zjednoczonym Królestwie wartości kwoty zamówień zostaną zwiększone o 10, a wartości frachtu o 3 procent:

UPDATE Orders

SET OrderAmount = OrderAmount * 1.1,

Freight = Freight * 1.03

WHERE ShipCountry = 'UK';

Początek strony