Tworzenie i uruchamianie zapytania aktualizującego

Tworzenie i uruchamianie zapytania aktualizującego

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.

Uwaga :  Ten artykuł nie dotyczy aplikacji sieci Web programu Access, czyli baz danych projektowanych przy użyciu programu Access i publikowanych w trybie online.

W tym artykule

Omówienie

Korzystanie z zapytania aktualizującego

Aktualizowanie danych między tabelami

Zatrzymywanie blokowania zapytania przez tryb wyłączony

Wersja SQL: instrukcja UPDATE

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 zapisywane 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 wartości unikatowych i w kwerendach rekordów unikatowych    Wartości w tych kwerendach są sumowane. 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 kwerendzie składającej    Danych zawartych w polach kwerendy składającej nie można aktualizować, ponieważ każdy rekord występujący w dwóch lub w większej liczbie źródeł danych jest zwracany tylko jeden raz w wyniku działania tej kwerendy. 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. Wybierając najpierw dane przed ich zmodyfikowaniem, można upewnić się, że zaktualizowane zostaną odpowiednie rekordy.

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 kliknij polecenie Zapisz jako. Uwaga: jeśli korzystasz z programu Access 2010, kliknij kartę Plik, a następnie polecenie Zapisz i publikuj. Jeśli korzystasz z programu Access 2007, kliknij przycisk pakietu Microsoft Office, a następnie pozycje Zarządzaj > Wykonaj kopię zapasową bazy danych.

  2. Po prawej stronie, w sekcji Zaawansowane kliknij polecenie Wykonaj kopię zapasową bazy danych.

  3. W oknie dialogowym Zapisywanie kopii zapasowej jako określ nazwę i lokalizację kopii zapasowej, a następnie kliknij przycisk 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 zapytania wybierającego w celu określenia rekordów do zaktualizowania

Krok 2. Aktualizowanie rekordów

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 kliknij pozycję Projekt zapytania. Uwaga: jeśli korzystasz z programu Access 2007, na karcie Tworzenie w grupie Inne kliknij pozycję Projekt zapytania.

    Zostanie otwarty projektant kwerend i zostanie otwarte okno dialogowe Pokazywanie tabeli.

  3. Kliknij kartę Tabele.

  4. Zaznacz tabelę lub tabele z rekordami do zaktualizowania, kliknij przycisk Dodaj, a następnie kliknij przycisk 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 zapytań

    1. Tabela przedstawiona w projektancie kwerend

    2. 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.

    Zapytanie 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, należy użyć wyrażenia < 234.

    >= "Misztal"

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

    Between #2017-02-02# And #2017-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 '2017-02-02' And '2017-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 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 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 (?).

    #2017-02-02#

    Znajduje wszystkie rekordy dla dnia 2 lutego 2017. 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 ('2017-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 Projektowanie w grupie Wyniki kliknij przycisk 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 Projektowanie w grupie Typ kwerendy kliknij przycisk 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.

    Zapytanie aktualizujące 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 typu Tekst zmienia wartość tekstową na wartość Sprzedawca.

    #2017-08-10#

    W polu typu Data/godzina zmienia wartość daty na 10-sie-2017.

    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ść] * [CenaJednostkowa]";
    "Szczegóły zamówień"; "[IDProduktu]=" & [IDProduktu])

    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 Projektowanie w grupie Wyniki kliknij przycisk Uruchom.

    Zostanie wyświetlony komunikat alertu.

  4. Kliknij przycisk Tak, aby uruchomić kwerendę i zaktualizować dane.

    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. Dodawanie nazw pól źródłowych w wierszu Aktualizacja do w siatce projektu kwerendy przy użyciu następującej składni: [tabela_źródłowa].[pole_źródłowe].

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

12-345

Polska

(012) 34-56-789

Tomasz Bochenek

2

Firma B

ul. Studzińskiego 52

Pruszków

Mazowieckie

23-456

Polska

(012) 34-56-780

Ewa Ciesielska

3

Firma C

ul. Niezapominajki 75

Poznań

Wielkopolskie

34-567

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

56-789

Polska

(012) 34-56-783

Marcin Kretowicz

6

Firma F

ul. Astronautów 31

Wronki

Wielkopolskie

34-567

Polska

(012) 34-56-784

Jacek Maśliński

7

Firma G

Truskawkowa 5

Rzeszów

Podkarpackie

87-654

Polska

(012) 34-56-785

Roman Stachnio

8

Firma H

ul. Microsoft 3

Białystok

Podlaskie

31-415

Polska

(012) 34-56-789

Beata Sapieżyńska

9

Firma I

ul. Microsoft 4

Białystok

Podlaskie

31-415

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

12-345

Polska

(012) 34-56-788

Wojciech Czupta

2

Firma B

ul. Studzińskiego 52

Pruszków

Mazowieckie

23-456

Polska

(012) 34-56-780

Ewa Ciesielska

3

Firma C

ul. Niezapominajki 75

Poznań

Wielkopolskie

34-567

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

56-789

Polska

(012) 34-56-783

Marcin Kretowicz

6

Firma F

ul. Astronautów 31

Wronki

Wielkopolskie

34-567

Polska

(012) 34-56-789

Aneta Olecka

7

Firma G

ul. Fistaszkowa 67

Rzeszów

Podkarpackie

87-654

Polska

(012) 34-56-789

Aneta Wiśniewska

8

Firma H

ul. Microsoft 3

Białystok

Podlaskie

31-415

Polska

(012) 34-56-789

Tomasz Bator

9

Firma I

ul. Microsoft 4

Białystok

Podlaskie

31-415

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 kliknij pozycję Projekt zapytania. Uwaga: jeśli korzystasz z programu Access 2007, na karcie Tworzenie w grupie Inne kliknij pozycję Projekt zapytania.

  2. W oknie dialogowym Pokazywanie tabeli kliknij kartę Tabele.

  3. Kliknij dwukrotnie tabelę źródłową i docelową, aby dodać je do kwerendy, a następnie kliknij przycisk Zamknij. 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 Projektowanie w grupie Typ kwerendy kliknij przycisk 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 Aktualizacja do kwerendy w każdej kolumnie, która zawiera pole docelowe, dodaj nazwę tabeli źródłowej oraz pole w tabeli źródłowej, które odpowiada polu w tabeli docelowej. Upewnij się, że użyto składni [Tabela].[Pole], gdzie nazwy tabel i pól znajdują się w nawiasach kwadratowych i są rozdzielone 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.

    Zapytanie aktualizujące jedną tabelę przy użyciu danych 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 Projektowanie w grupie Wyniki kliknij przycisk Uruchom.

  9. W odpowiedzi na pytanie o potwierdzenie aktualizacji kliknij przycisk 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

Tekst

Nota

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.

Nota

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

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.

Nota

Pole typu Nota musi zawierać tylko tekst, prawidłowe waluty i separatory miejsc dziesiętnych. Liczba znaków w polu typu Nota nie może przekraczać rozmiaru ustawionego 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

Tekst

Oryginalny tekst musi być rozpoznawalną datą lub kombinacją daty i godziny, na przykład 18 sty 2007.

Nota

Oryginalny tekst musi być rozpoznawalną datą lub kombinacją daty i godziny, na przykład 18 sty 2007.

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

Tekst

Tekst musi się składać z liczb i prawidłowych separatorów.

Nota

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

Tekst

Niedozwolone, jeśli pole typu Autonumerowanie służy jako klucz podstawowy.

Nota

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

Tekst

Oryginalny tekst musi się składać z pozycji Tak, Nie, Prawda, Fałsz, Włączony lub Wyłączony.

Nota

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

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 konwertuje tekst na hiperłącze. 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: http://, gopher://, telnet://, ftp:// lub wais://.

Nota

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 przypadku program Access dołącza na początku każdej wartości ciąg http:// i otrzymane łącza są nieprawidłowe.

Data/Godzina

Program Access dołącza na początku każdego adresu ciąg http://, ale otrzymane linki prawie nigdy nie działają.

Waluta

Program Access dołącza na początku każdej wartości ciąg http://, ale (podobnie jak w przypadku dat) otrzymane linki prawie nigdy nie działają.

Autonumerowanie

Niedozwolone, jeśli pole typu Autonumerowanie jest częścią relacji. Program Access dołącza na początku każdej wartości ciąg http://, ale otrzymane łącza prawie nigdy nie działają.

Tak/Nie

Program Access konwertuje wszystkie wartości Tak na -1, a wszystkie wartości Nie na 0 oraz dołącza na początku każdej wartości ciąg http://. 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 nowa_wartość    WHERE kryteria;

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

Rozwijaj swoje umiejętności
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.

×