Wykłady
Podstawowe kroki w projektowaniu bazy danych:
Określenie celu, któremu ma służyć baza danych
Pierwszym krokiem projektowania bazy danych programu Microsoft Access jest określenie celu, któremu ma służyć baza i sposobu jej używania. Konieczne jest okreleślenie jakich informacji ma dostarczyć baza danych. Na tej podstawie można określić, jakie zagadnienia będą analizowane w bazie danych (tabele) i jakie informacje mają określać każde zagadnienie (pola w tabelach).
Określenie tabel, które znajdą się w bazie danych
Określenie tabel może być najtrudniejszym etapem procesu projektowania bazy danych. Powodem tego jest fakt, że wyniki, których ma dostarczyć baza danych - raporty gotowe do wydrukowania, formularze przeznaczone do wykorzystania, pytania, na które trzeba odpowiedzieć - nie zawsze zawierają bezpośrednie wskazówki o strukturze tworzących je tabel. Projektując tabele należy mieć na uwadze przedstawione poniżej podstawowe zasaday projektowania:
Ta sama informacja nie powinna być wielokrotnie wprowadzona do jednej lub kilku tabel. Jeżeli informacja jest przechowywana tylko w jednej tabeli, można ją uaktualnić zmieniając dane tylko w jednym miejscu. Tak jest łatwiej, a ponadto unika się wystąpienia niezgodności danych zapisanych w różnych miejscach. Na przykład, dobrze jest zapisać numer telefonu i adres klienta tylko raz, w jednej tabeli.
Każda tabela powinna zawierać informacje tylko na jeden temat. Jeżeli tabela zawiera dane na temat jednego zagadnienia można przetwarzać je niezależnie od danych dotyczących innych zagadnień. Na przykład, adresy klientów będą przechowywane w innej tabeli niż zamówienia. W ten sposób można usunąć jakieś zamówienie, zachowując dane o kliencie.
Określenie pól, które znajdą się w tabelach
Każda tabela zawiera informacje na temat jednego zagadnienia, a każde pole w tabeli zawiera jedną daną dotyczącą tego zagadnienia, któremu poświęcona jest tabela. Na przykład, tabela poświęcona klientom może zawierać pola z nazwą firmy, adresem, miastem, krajem i numerem telefonu. Zabierając się do projektowania pól w tabelach dobrze jest pamiętać o następujących wskazówkach:
Należy powiązać każde pole bezpośrednio z zagadnieniem, którego dotyczy tabela.
Nie należy wprowadzać danych pośrednich lub obliczonych (danych, które są wynikiem wyrażenia).
Należy uwzględnić wszystkie potrzebne informacje.
Informacje należy przechowywać w możliwie najmniejszych jednostkach logicznych (na przykład Imię oraz Nazwisko, a nie Dane personalne).
Przypisanie polom jednoznacznych wartości
Aby program Microsoft Access mógł powiązać informacje przechowywane w różnych tabelach. Na przykład, aby powiązać klienta ze wszystkimi jego zamówieniami każda tabela w bazie danych musi zawierać pole lub zbiór pól, które jednoznacznie określają każdy rekord. Takie pole lub zbiór pól nazywany jest kluczem podstawowym.
Określenie relacji (sprzężeń) między tabelami
Po podzieleniu danych na tabele i zdefiniowaniu pól kluczy podstawowych trzeba wprowadzić do programu Microsoft Access informacje na temat sposobu poprawnego łączenia powiązanych danych w logiczną całość. W tym celu definiuje się relacje między tabelami. Gdy się to zrobi, można tworzyć kwerendy, formularze i raporty pozwalające wyświetlać za jednym razem informacje z różnych tabel. Poniższy formularz, na przykład, zawiera informacje z pięciu tabel:
Relację definiuje się przez dodanie tabel, które mają być powiązane relacją do okna Relacja, a następnie przeciągnięcie pola kluczowego z jednej tabeli do pola kluczowego w drugiej tabeli.
Jeżeli przeciągnie się pole, które nie jest kluczem podstawowym i nie ma indeksu unikatowego do innego pola, które również nie jest kluczem podstawowym i nie posiada indeksu unikatowego, to tworzona jest relacja nieokreślona. W kwerendach zawierających tabele z nieokreślonymi relacjami zostanie wyświetlona domyślna linia sprzęgająca pomiędzy tabelami, ale nie zostanie wymuszona integralność referencyjna i nie będzie gwarancji, że rekordy w tabelach są unikatowe.
Korzyści wynikające z powiązania relacjami tabel w bazie danych jest wiele. Porzez dopasowanie pól mamy dużo szybszą możliwość wydobywania informacji z bazy, a także rzadziej występują błędy podczas wprowadzania danych. Powiązane relacjami tabele mogą być wykorzystane w kwerendach, formularzach i raportach. Dodanie podformularza do formularza i podraportu do raportu pozwala na zobaczenie powiązanej informacji w innych tabelach.
Relacja jeden-do-wielu
Relacja jeden-do-wielu jest najbardziej powszechnym typem relacji. W relacji jeden-do-wielu rekord w tabeli A może mieć wiele dopasowanych do niego rekordów z tabeli B, ale rekord w tabeli B ma tylko jeden dopasowany rekord w tabeli A.
Do stworzenia relacji między dwiema tabelami trzeba określić, które pola mają być w nich wspólne. W relacji jeden do wielu pole to, w tabeli „rodzica” jest nazywane kluczem podstawowym i musi być kluczem podstawowym tabeli, albo unikalnym indeksem. Pole w tabeli „dziecka” jest nazywane kluczem obcym i nie musi zawierać unikalnej wartości.
Relacja jeden-do-jednego
W relacji jeden-do-jednego każdy rekord w tabeli A może mieć tylko jeden dopasowany rekord z tabeli B, i tak samo każdy rekord w tabeli B może mieć tylko jeden dopasowany rekord z tabeli A. Ten typ relacji spotyka się rzadko, ponieważ większość informacji powiązanych w ten sposób byłoby zawartych w jednej tabeli. Relacji jeden-do-jednego można używać do podziału tabeli z wieloma polami, do odizolowania części tabeli ze względów bezpieczeństwa, albo do przechowania informacji odnoszącej się tylko do podzbioru tabeli głównej. Na przykład, można by utworzyć tabelę do wyszukiwania pracowników uczestniczących w rozgrywkach piłkarskich.
W relacji jeden do jednego obydwa pola są kluczami podstawowymi lub unikalnymi indeksami w swoich tabelach.
Relacja wiele-do-wielu
W relacji wiele-do-wielu, rekord w tabeli A może mieć wiele dopasowanych do niego rekordów z tabeli B i tak samo rekord w tabeli B może mieć wiele dopasowanych do niego rekordów z tabeli A. Jest to możliwe tylko przez zdefiniowanie trzeciej tabeli (nazywanej tabelą łącza), której klucz podstawowy składa się z dwóch pól ľ kluczy obcych z tabel A i B. Relacja wiele-do-wielu jest w istocie dwiema relacjami jeden-do-wielu z trzecią tabelą. Na przykład, tabele "Zamówienia" i "Produkty" są powiązane relacją wiele-do-wielu zdefiniowaną przez utworzenie dwóch relacji jeden-do-wielu z tabelą "Opisy zamówień".
Relacja wiele do wielu jest w rzeczywistości dwoma relacjami typu jeden do wielu, w której trzecia tabela ma klucz podstawowy będący kombinacją kluczy w obydwu tabelach
Więzy integralności
Integralność referencyjna jest zbiorem reguł, które próbują utrzymać kompletną bazę, bez żadnych ślepych końców. Nie związane rekordy nie mogą istnieć bez rodzica. Aby Access przestrzegał reguł integralności referencyjnej dla definiowanej relacji należy zaznaczyć pole Wymuszaj więzy integralności w oknie dialogowym Edytowanie relacji.
Przy wymuszonej integralności referencyjnej w programie Microsoft Access niemożliwe jest: dodawanie rekordów do tabeli powiązanej, jeśli w tabeli podstawowej nie występują rekordy skojarzone, dokonywanie zmian wartości w rekordach tabeli podstawowej, które mogłyby spowodować wystąpienie rekordów osieroconych w tabeli powiązanej, usuwanie rekordów z tabeli podstawowej, jeśli w tabeli powiązanej występują pasujące rekordy powiązane.
Po zaznaczeniu opcji Wymuszaj więzy integralności staną się dostępne dwie nowe opcje, które pozwalają ograniczyć niektóre restrykcje. Jeśli po zaznaczeniu tych opcji (Kaskadowo aktualizuj pola pokrewne i Kaskadowo usuń rekordy pokrewne) skasujemy rekord z tabeli rodzica lub zmienimy jedną z wartości klucza podstawowego, Access automatycznie wykona zmianę w tabeli dziecka, aby zachować integralność referencyjną.
Brak symboli na końcach linii relacji wskazuje, że nie jest przestrzegana integralność referencyjna. Aby ją dodać, trzeba zmodyfikować relację w okienku relacji. Można określić, która strona relacji jeden do wielu jest tą „jedną”.
Typy połączeń relacji - właściwości sprzężeń (s. 94, 168 - 2k)
Istnieją trzy typy połączenia relacji, które można wybrać w okienku dialogowym Właściwości sprzężenia:
Opcja 1: Dołącza tylko wiersze, w których sprzęgane pola z obu grup są równe - sprzężenie wewnętrzne w którym rekordy z dwóch tabel są łączone i dodawane do zestawu wyników kwerendy tylko wtedy, gdy wartości sprzęganych pól spełniają określony warunek. Na przykład, domyślnym sprzężeniem między tabelami w widoku ”Projekt” kwerendy jest sprzężenie wewnętrzne, wybierające rekordy z obu tabel tylko wtedy, gdy wartości sprzęganych pól są równe. Jest ono typem domyślnym.
Opcja 2: Uwzględnia WSZYSTKIE rekordy z tabeli rodzica i tylko te rekordy z tabeli dziecka, dla których związane pola są równe - lewe sprzężenie zewnętrzne, w którym wszystkie rekordy z lewej strony operacji LEFT JOIN w instrukcji SQL są dodawane do zestawu wyników kwerendy, nawet jeśli w sprzęganych polach z prawej tabeli nie występują wartości zgodne. Rekordy z tabeli po prawej stronie są kojarzone tylko z tymi rekordami tabeli po lewej stronie, które w sprzęganych polach mają zgodne wartości. Lewe sprzężenie zewnętrzne jest wskazywane przez strzałkę linii sprzężenia skierowaną z lewa na prawo.
Opcja 3: Uwzględnia WSZYSTKIE rekordy z tabeli dziecka i tylko te rekordy z tabeli rodzica, dla których związane pola są równe - prawe sprzężenie zewnętrzne, w którym wszystkie rekordy z prawej strony operacji RIGHT JOIN w instrukcji SQL są dodawane do wyników kwerendy, nawet jeśli w sprzęganych polach z tabeli z lewej strony nie występują zgodne wartości. Rekordy z tabeli po lewej stronie są kojarzone tylko z tymi rekordami tabeli po prawej stronie, które w sprzęganych polach mają wartości zgodne. Prawe sprzężenie zewnętrzne jest wskazywane przez strzałkę linii sprzężenia skierowaną z prawa na lewo. Jeżeli integralność referencyjna jest przestrzegana, nie będzie żadnych dzieci bez rodziców.
Wprowadzenie danych i utworzenie innych obiektów bazy danych
Kiedy okaże się, że struktura tabel spełnia opisane powyżej kryteria, można wprowadzić wszystkie dane do tabel i utworzyć dowolne kwerendy, formularze, raporty, makra i moduły.
Zastosowanie narzędzi analizy programu Microsoft Access
Program Microsoft Access jest wyposażony w dwa narzędzia, które pomagają udoskonalić projekt bazy danych. Kreator analizy tabel potrafi sprawdzić projekt przeglądając jednorazowo jedną tabelę, zaproponować nową strukturę tabeli i - jeśli to ma sens - zamienić tabelę w kilka tabel połączonych relacjami. Analizator wydajności potrafi przeprowadzić analizę całej bazy danych, sformułować zalecenia i propozycje dotyczące wprowadzenia ulepszeń. Analizator wydajności może też wprowadzić te zalecenia i propozycje.
Integralność danych
Stosowanie formatów danych
Formaty liczbowe (numeryczne) definiowane przez użytkownika:
Znak |
Opis |
Brak |
Wyświetla liczbę bez formatowania. |
(0) |
Miejsce zarezerwowane na cyfrę dziesiętną. Powoduje wyświetlenie cyfry lub zera. Jeśli w wyrażeniu znajduje się cyfra w miejscu, w którym w ciągu formatującym znajduje się 0, to zostanie ona wyświetlona. W przeciwnym przypadku w miejscu tym będzie wyświetlone zero.Jeśli liczba ma mniej cyfr niż jest zer (po którejkolwiek ze stron separatora dziesiętnego) w wyrażeniu formatującym, wyświetlone zostaną początkowe lub końcowe zera. Jeśli liczba ma więcej cyfr na prawo od separatora dziesiętnego niż jest zer na prawo od separatora dziesiętnego w wyrażeniu formatującym, liczba zostanie zaokrąglona do tylu miejsc dziesiętnych, ile jest zer. Jeśli liczba ma więcej cyfr na lewo od separatora dziesiętnego niż jest zer na lewo od separatora dziesiętnego w wyrażeniu formatującym, dodatkowe cyfry zostaną wyświetlone bez zmian. |
(#) |
Miejsce zarezerwowane na cyfrę dziesiętną. Powoduje wyświetlenie cyfry lub niewyświetlenie żadnego znaku. Jeśli w wyrażeniu znajduje się cyfra w miejscu, w którym w ciągu formatującym znajduje się znak #, zostanie ona wyświetlona. W przeciwnym przypadku w tym miejscu nic nie zostanie wyświetlone. Ten symbol ma znaczenie podobne do symbolu 0, z wyjątkiem początkowych i końcowych zer, które nie są wyświetlane, jeśli liczba ma tyle samo lub mniej cyfr niż liczba znaków # po którejkolwiek ze stron separatora dziesiętnego w wyrażeniu formatującym. |
(.) |
Miejsce zarezerwowane na znak separatora dziesiętnego. Dla niektórych ustawień regionalnych jako znak separatora dziesiętnego jest używany przecinek. Miejsce zarezerwowane na separator określa, ile cyfr jest wyświetlanych na lewo i prawo od separatora dziesiętnego. Jeśli wyrażenie formatujące zawiera jedynie znaki numeru (#) na lewo od tego symbolu, liczby mniejsze niż 1 rozpoczynają się od separatora dziesiętnego. Aby wyświetlić początkowe 0 przed cyframi części ułamkowej, należy użyć 0 jako pierwszego oznaczenia miejsca cyfry dziesiętnej na lewo od separatora dziesiętnego. Faktyczny znak używany jako symbol separatora dziesiętnego w sformatowanym ciągu wyjściowym zależy od formatu liczb używanego przez system. |
(%) |
Znak procentu. Wyrażenie jest mnożone przez 100. Znak procentu (%) jest wstawiany na pozycji, na której znajduje się w ciągu formatującym. |
(,) |
Separator tysięcy. W niektórych ustawieniach regionalnych jako separator tysięcy używana jest kropka lub spacja. Separator ten oddziela tysiące od setek w liczbie posiadającej więcej niż cztery cyfry na lewo od separatora dziesiętnego. Separator działa w standardowy sposób, jeśli w ciągu formatującym znajduje się między symbolami cyfr dziesiętnych (0 lub #). Dwa sąsiadujące ze sobą separatory tysięcy lub też separator tysięcy znajdujący się bezpośrednio na lewo od separatora dziesiętnego (niezależnie od tego, czy istnieje część ułamkowa) oznacza "skaluj liczbę, dzieląc ją przez 1000 i zaokrąglając wynik, jeśli trzeba ". Na przykład, ciąg formatujący "##0,," może służyć do reprezentowania 100 milionów przez liczbę 100. Liczby mniejsze niż 1 milion są wyświetlane jako 0. Dwa sąsiadujące ze sobą separatory tysięcy znajdujące się na innym miejscu niż na lewo od separatora dziesiętnego są traktowane jak pojedynczy znak separatora tysięcy. Faktyczny znak używany jako separator tysięcy w sformatowanym ciągu wyjściowym zależy od formatu liczb używanego przez system. |
(:) |
Separator godziny. W niektórych ustawieniach regionalnych do reprezentowania separatora godziny mogą być używane inne znaki. Separator godziny oddziela godziny, minuty i sekundy przy formatowaniu wartości godziny. Faktyczny znak stosowany jako separator godziny w sformatowanym ciągu wyjściowym zależy od ustawień systemu. |
(/) |
Separator daty. W niektórych ustawieniach regionalnych do reprezentowania separatora daty mogą być używane inne znaki. Separator daty oddziela dzień, miesiąc i rok w sformatowanej dacie. Faktyczny znak używany jako separator daty w sformatowanym ciągu wyjściowym zależy od ustawień systemu. |
(E- E+ e- e+) |
Format wykładniczy. Jeśli wyrażenie formatujące zawiera co najmniej jeden symbol cyfry dziesiętnej (0 lub #) na prawo od znaków E-, E+, e- lub e+, to liczba jest wyświetlana w formacie wykładniczym, a znak E lub e zostaje wstawiony między liczbę a jej wykładnik. Liczba symboli oznaczających cyfry dziesiętne na prawo określa liczbę cyfr wykładnika. Znaki E- lub e- powodują umieszczenie znaku minus przed wykładnikami ujemnymi. Znaki E+ lub e+ powodują umieszczenie znaku minus przed wykładnikami ujemnymi, a znaku plus przed wykładnikami dodatnimi. |
- + $ ( ) |
Wyświetla literalnie podany znak. Aby wyświetlić znak inny niż tu wymieniony, należy poprzedzić go kreską ukośną lewą (\) lub umieścić go w podwójnym cudzysłowie (" "). |
(\) |
Wyświetla następny znak z ciągu formatującego. Aby wyświetlić znak, który samodzielnie występujący ma specjalne znaczenie, należy poprzedzić go kreską ukośną lewą. (\). Sam znak kreski ukośnej lewej nie jest wyświetlany. Użycie tego znaku jest równoważne ujęciu następującego po nim znaku w podwójny cudzysłów. Aby wyświetlić kreskę ukośną lewą, należy użyć dwóch takich znaków (\\).Przykładami znaków, które nie mogą być wyświetlane literalnie, są znaki formatujące datę i godzinę (a, c, d, h, m, n, p, q, s, t, w, y, /, :), znaki formatujące liczby (#, 0, %, E, e, przecinek i kropka) oraz znaki formatujące ciągi znaków (@, &, <, >, !). |
("ABC") |
Wyświetla ciąg znaków znajdujący się między znakami cudzysłowu (" "). Aby z poziomu programu umieścić w argumencie format ciąg znaków, należy w celu ujęcia tekstu w cudzysłów użyć funkcji Chr(34) (34 jest kodem dla znaku cudzysłowu (")). |
Dostępne formaty daty i godziny:
W poniższej tabeli zostały przedstawione predefiniowane ustawienia właściwości Format dla danych typu Data/Godzina.
Ustawienie |
Opis |
Data ogólna |
(Ustawienie domyślne) Jeśli wartość jest tylko datą, nie jest wyświetlana godzina; jeśli wartość jest tylko godziną, to nie jest wyświetlana data. Ustawienie to jest kombinacją ustawień “Data krótka” i “Godzina długa”.Przykłady: 4/3/93, 05:34:00 PM, i 4/3/93 05:34:00 PM. |
Data długa |
Takie samo ustawienie, jak ustawienie w polu “Data długa” okna dialogowego Właściwości: Ustawienia regionalne w Panelu sterowania systemu Windows.Przykład: sobota, 3 kwietnia 1993. |
Data średnia |
Przykład: 3-IV-93. |
Data krótka |
Takie samo ustawienie, jak ustawienie w polu “Data krótka” okna dialogowego Właściwości: Ustawienia regionalne w Panelu sterowania systemu Windows.Przykład: 4/3/93. Ostrzeżenie! Ustawienie “Data krótka” zakłada że daty z przedziału od 1/1/00 do 12/31/29 są datami z dwudziestego pierwszego wieku (to znaczy że są to lata od 2000 do 2029). Daty z przedziału 1/1/30 do 12/31/99 są przyjmowane jako daty z dwudziestego wieku (co oznacza że są to lata od 1930 do 1999). |
Godzina długa |
Takie samo ustawienie, jak ustawienie na karcie Godzina w oknie dialogowym Właściwości: Ustawienia regionalne w Panelu sterowania systemu Windows.Przykład: 5:34:23 PM. |
Godzina średnia |
Przykład: 5:34 PM. |
Godzina krótka |
Przykład: 17:34. |
Symbole pozwalające zdefiniować dowolny format wyświetlania daty i godziny:
Znak |
Opis |
(:) |
Separator godziny. W niektórych ustawieniach regionalnych separator czasu może być reprezentowany przez inny znak. Separator ten oddziela godziny, minuty i sekundy przy formatowaniu wartości oznaczających godzinę (czas). Faktyczny znak używany jako separator godziny w sformatowanym ciągu wyjściowym jest określony przez ustawienia systemu. |
(/) |
Separator daty. W niektórych ustawieniach regionalnych separator daty może być reprezentowany przez inny znak. Separator daty oddziela dzień, miesiąc i rok przy formatowaniu wartości oznaczających datę. Faktyczny znak używany jako separator daty w sformatowanym ciągu wyjściowym jest określony przez ustawienia systemu. |
c |
Wyświetla datę w postaci ddddd i godzinę w postaci |
ttttt |
Wyświetla jedynie dane dotyczące daty, jeśli liczba seryjna daty nie ma części ułamkowej; wyświetla jedynie godzinę, jeśli liczba seryjna nie ma części całkowitej. |
d |
Wyświetla dzień jako liczbę nie poprzedzoną zerem (1 - 31). |
dd |
Wyświetla dzień jako liczbę poprzedzoną zerem (01 - 31). |
ddd |
Wyświetla skróconą nazwę dnia (Pn - N). |
dddd |
Wyświetla pełną nazwę dnia (poniedziałek- niedziela). |
ddddd |
Wyświetla pełną datę (zawierającą dzień, miesiąc i rok) sformatowaną zgodnie z systemowymi ustawieniami krótkiego formatu daty. W systemie Microsoft Windows domyślnym krótkim formatem daty jest yy/mm/dd. |
dddddd |
Wyświetla pełną datę (zawierającą dzień, miesiąc i rok) sformatowaną zgodnie z systemowymi ustawieniami długiego formatu daty. W systemie Microsoft Windows domyślnym długim formatem daty jest dd mmmm yyyy. |
w |
Wyświetla dzień tygodnia jako liczbę (1 dla niedzieli, 7 dla soboty). |
ww |
Wyświetla numer tygodnia w roku jako liczbę (1 - 54). |
m |
Wyświetla miesiąc jako liczbę nie poprzedzoną zerem (1 - 12). Jeśli m następuje bezpośrednio po h lub hh, zamiast miesiąca wyświetlane są minuty. |
mm |
Wyświetla miesiąc jako liczbę poprzedzoną zerem (1 - 12). Jeśli m następuje bezpośrednio po h lub hh, zamiast miesiąca wyświetlane są minuty. |
mmm |
Wyświetla skróconą nazwę miesiąca (Sty - Gru). |
mmmm |
Wyświetla pełną nazwę miesiąca (styczeń - grudzień). |
q |
Wyświetla kwartał roku jako liczbę (1 - 4). |
y |
Wyświetla dzień roku jako numer (1 - 366). |
yy |
Wyświetla rok jako liczbę dwucyfrową (00 - 99). |
yyyy |
Wyświetla rok jako liczbę czterocyfrową (100 - 9999). |
h |
Wyświetla godzinę jako liczbę nie poprzedzoną zerem (0 - 23). |
hh |
Wyświetla godzinę jako liczbę poprzedzoną zerem (00 - 23). |
n |
Wyświetla minutę jako liczbę nie poprzedzoną zerem (0 - 59). |
nn |
Wyświetla minutę jako liczbę poprzedzoną zerem (00 - 59). |
s |
Wyświetla sekundę jako liczbę nie poprzedzoną zerem (0 - 59). |
ss |
Wyświetla sekundę jako liczbę poprzedzoną zerem (00 - 59). |
t t t t t |
Wyświetla pełną godzinę (zawierającą godzinę, minutę i sekundę) sformatowaną z użyciem separatora godziny określonego w stosowanym przez system formacie godziny. Początkowe zero jest wyświetlane, jeśli w ustawieniach regionalnych wybrano odpowiednią opcję, oraz jeśli godzina jest wcześniejsza niż 10:00. W systemie Microsoft Windows domyślnym formatem godziny jest h:mm:ss. |
AM/PM |
Stosuje 12-godzinny format godziny i dla godzin przedpołudniowych wyświetla napis AM wielkimi literami; a dla godzin między południem a 23:59 wyświetla napis PM (także wielkimi literami). |
am/pm |
Stosuje 12-godzinny format godziny i dla godzin przedpołudniowych wyświetla napis AM małymi literami; a dla godzin między południem a 23:59 wyświetla napis PM (także małymi literami). |
A/P |
Stosuje 12-godzinny format godziny i dla godzin przedpołudniowych wyświetla napis A wielkimi literami; a dla godzin między południem a 23:59 wyświetla napis P (także wielkimi literami). |
a/p |
Stosuje 12-godzinny format godziny i dla godzin przedpołudniowych wyświetla napis A małymi literami; a dla godzin między południem a 23:59 wyświetla napis P (także małymi literami). |
AMPM |
Używa 12-godzinnego formatu godziny i dla godzin przedpołudniowych wyświetla literały znakowe AM w postaci zdefiniowanej przez system; wyświetla literał znakowy PM w postaci zdefiniowanej przez system dla godzin między południem a 23:59. Napis AMPM może być pisany zarówno wielkimi, jak i małymi literami, lecz wielkość liter ciągu wyświetlanego odpowiada ciągowi zdefiniowanemu w systemie. W systemie Microsoft Windows domyślnym formatem jest AM/PM. |
Stosowanie masek wprowadzania
Właściwość InputMask (MaskaWprowadzania) służy do ułatwiania wprowadzania danych oraz do sterowania wartościami, jakie użytkownicy mogą wpisywać do formantów typu pole tekstowe. Można na przykład utworzyć maskę wprowadzania dla pola “Numer telefonu”, w którym będzie dokładnie pokazane, w jaki sposób nowy numer ma zostać wprowadzony: (___) ___-____.
Tworząc maskę wprowadzania można za pomocą znaków specjalnych zdecydować, że pewne znaki będą wymagane (na przykład numer telefonu), podczas gdy inne będą opcjonalne (na przykład numer kierunkowy). Znaki te określają, jaki typ znaku (cyfrę czy literę) trzeba wprowadzić w miejsce każdego znaku w masce wprowadzania.
Maskę wprowadzania można utworzyć korzystając z następujących znaków:
Znak |
Opis |
0 |
Cyfra (Od 0 do 9, pozycja wymagana, znaki plus [+] i minus [-] nie są dozwolone). |
9 |
Cyfra lub spacja (pozycja nie jest wymagana, znaki plus i minus nie są dozwolone). |
# |
Cyfra lub spacja (pozycja nie jest wymagana, w trybie edycji spacje wyświetlane są jako puste miejsca, lecz podczas zapisywania danych spacje są usuwane; znaki plus i minus są dozwolone). |
L |
Litera (od A do Z, pozycja wymagana). |
? |
Litera (od A do Z, pozycja wymagana). |
A |
Litera lub cyfra (pozycja wymagana). |
a |
Litera lub cyfra (pozycja wymagana). |
& |
Dowolny znak lub spacja (pozycja wymagana). |
C |
Dowolny znak lub spacja (pozycja wymagana). |
. , : ; - / |
Dziesiętny symbol zastępczy oraz separator tysięcy, dat i godzin. (Znak, który zostanie użyty w charakterze separatora zależy od ustawień w oknie dialogowym Właściwości: Ustawienia regionalne w Panelu sterowania systemu Windows). |
< |
Powoduje, że wszystkie litery zostaną zmienione na małe. |
> |
Powoduje, że wszystkie litery zostaną zmienione na wielkie. |
! |
Powoduje, że wszystkie dane są wyświetlane od strony prawej do lewej zamiast od lewej do prawej. Znaki wpisane do maski wprowadzania zawsze będą ją wypełniać od strony lewej do strony prawej. Wykrzyknik może pojawić się w dowolnym miejscu maski wprowadzania |
\ |
Powoduje, że znak, który po nim występuje, zostanie wyświetlony jako znak literałowy (na przykład, \A będzie wyświetlone po prostu jako A). |
Uwaga: Ustawienie właściwości InputMask na wartość "Hasło" tworzy formant do wprowadzania hasła. Dowolny znak wprowadzony do formantu będzie zapisywany jako znak, lecz wyświetlany w postaci gwiazdki (*). Maski “Hasło” można używać, aby uniemożliwić wyświetlanie wprowadzanych znaków na ekranie.
Wybór między formatem wyświetlania, a maską wprowadzania
W programie Microsoft Access użytkownik ma do dyspozycji dwie właściwości, które dają podobny efekt: właściwość Format i właściwość MaskaWprowadzania.
Właściwość Format służy do wyświetlania danych w jednolitym formacie. Na przykład, jeśli właściwość Format dla pola "Data/Godzina" zostanie ustalona jako Data średnia, wówczas wszystkie wprowadzane daty będą wyświetlane w tym formacie: 12-I-96. Jeśli użytkownik bazy danych wprowadzi datę w postaci 01/12/96 (lub w innym poprawnym formacie), to program Microsoft Access przekształci wyświetloną datę do formatu Data średnia podczas zapamiętywania rekordu.
Właściwość Format wpływa tylko na sposób wyświetlania wartości, a nie na to, jak jest ona zapamiętana w tabeli.
Jeśli wymagana jest kontrola danych podczas ich wprowadzania, należy wykorzystać maskę wprowadzania zamiast, lub jednocześnie z formatem wyświetlania danych. Jeśli dane mają być wyświetlane w postaci dokładnie takiej, jak podczas wprowadzania, nie należy ustawiać właściwości Format.
Predefiniowane formaty wyświetlania są dostępne dla pól typu "Liczba", "Walutowy", "Data/Godzina", "Autonumer" i "Tak/Nie"; a formaty tych pól można też dostosować. Nie są określone formaty predefiniowane dla pól typu "Tekst", "Memo', czy "Hiperłącze", ale dla pól tych można zdefiniować formaty niestandardowe. Nie można natomiast zdefiniować formatu wyświetlania dla pól typu "Obiekt OLE".
Zastosowanie maski wprowadzania zapewnia, że dane będą zgodne ze zdefiniowanym formatem; można ponadto zdefiniować typ wartości, która ma być wprowadzona w każde z pustych miejsc. Na przykład, przedstawiona powyżej maska wprowadzania wymaga, aby wszystkie dane zawierały dokładnie tyle cyfr, ile potrzeba do zapisania numeru telefonu wraz z numerem kierunkowym, oraz aby w każde z pustych miejsc została wpisana cyfra.
Uwaga: W przypadku zdefiniowania dla danego pola zarówno formatu wyświetlania, jak i maski wprowadzania, program Microsoft Access odwołuje się do maski w przypadku dodawania lub edycji danych, zaś właściwość Format określa sposób wyświetlania danych po zapamiętaniu rekordu. Stosując jednocześnie właściwości Format i MaskaWprowadzania należy sprawdzić, czy wyniki ich działania nie będą sprzeczne.
Literatura
Boratyn Dariusz - Microsoft Office Access 97. System, oblicze, ku aplikacjom. Wydawnictwo CROMA, Wrocław 1997, ISBN 83-86343-27-2.
Microsoft Corporation - Microsoft Access. System zarządzania relacyjnymi bazami danych dla Windows. Podręcznik użytkownika. Ireland 1994
Microsoft Corporation - Microsoft Access. System zarządzania relacyjnymi bazami danych dla Windows. Tworzenie aplikacji. Ireland 1994
Simpson Alan - Zrozumieć Microsoft Access 2. Warszawa 1995
Andersen Virginia - Access 2000: Kompendium wiedzy. Warszawa 2000
Cassel, O. i C. Eddy: ACCESS 97. Baza danych dla każdego. Wydawnictwo HELION, Gliwice, 1999. ISBN 83-7197-067-6.
Kopertowska M. i Ł. Jaroszewski: Ćwiczenia z bazy danych ACCESS 97. EDU-MIKOM, Warszawa, 1997. ISBN 83-87102-031-8.
Kopertowska M. Europejskie Komputerowe Prawo Jazdy. Bazy Danych. (ECDL). ZNI MIKOM, Warszawa, 1999. ISBN 83-87102-62-8.
Microsoft Access 97 - krok po kroku. Wydawnictwo RM, Sp. Z o.o., Warszawa, 1997. ISBN 83-87216-09-7.
Nowakowska M. i E. Zając: Access. Programowanie aplikacji. EDU-MIKOM, Warszawa, 1998. ISBN 83-87102-57-1.
Banachowski Lech - Bazy danych. Tworzenie aplikacji. Akademicka Oficyna Wydawnicza PLJ, Warszawa, 1998. ISBN 83-7101-377-9.
Ullman, J.D., J. Widom - Podstawowy wykład z systemów baz danych. WN-T, Warszawa, 1999 (tłum. z języka ang., wyd. 1997). ISBN 83-204-2394-5.
Benyon-Davies, P.: Systemy baz danych. WNT, Warszawa, 1998. ISBN 83-204-2257-4.
Pankowski Tadeusz: Podstawy baz danych. Wydawnictwo Naukowe PWN, Warszawa, 1992. ISBN 83-01-10570-4.
E. Callahan "MS Access 97 Visual Basic Krok po kroku", Microsoft Press 1998. W. Cellary, Z. Królikowski "Wprowadzenie do projektowania baz danych (dbase III)", WNT 1988. C. Delobel, M. Adiba "Relacyjne bazy danych" WNT 1989.
C. Delobel, M. Adiba; Relacyjne bazy danych; WNT Warszawa ;1989. T. Pankowski; Podstawy baz danych; PWN Warszawa ;1992.
Uwagi
CenaKońcowa: CCur([Opisy zamówień].[CenaJednostkowa]*[Ilość]*(1-[Rabat]))
Jeżeli tabele dodane do kwerendy nie są sprzężone i Access nie może ich połączyć, należy połączyć je sprzężeniem w kwerendzie. W przeciwnym wypadku jako wynik otrzymamy iloczyn Kartezjański tzn. każdy z n wierszy w jednej tabeli zostanie dopasowany do każdego z m wierszy w drugiej tabeli. Wtedy zestaw wynikowy ma n × m rekordów i najczęściej nie jest tym, czego oczekujemy.
Jeżeli zrobimy błąd przy wpisywaniu nazwy pola, przy uruchamianiu kwerendy Access potraktuje wyrażenie w nawiasach kwadratowych jako parametr kwerendy i wyświetli okno dialogowe. Należy wtedy wybrać Anuluj i poprawić błąd w projekcie kwerendy.
10