background image

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

BAZA DANYCH - MS ACCESS 

WYKŁADY 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
dr inż. Piotr Muryjas 

Instytut Informatyki 

Politechnika Lubelska 

background image

 

BAZA DANYCH ECDL 

 

EGZAMINATORZY 
Id-egzaminator  TEKST  (4) 
Nazwisko  TEKST  (25) 
Imię  TEKST  (15) 
Kod-poczta  TEKST  (5) 
Miasto  TEKST  (15) 
Ulica  TEKST  (30) 
Numer  TEKST  (8) 
Tel  TEKST  (12) 
Fax  TEKST  (12) 
E-mail  TEKST  (30) 

EGZAMINY
nr-egz  LICZBA

Id-student  <FK1>  TEKST  (7)
Id-przedmiot  <FK2>  LICZBA
Id-egzaminator  <FK3>  TEKST  (4)
Data-egz  DATA
Id-osrodek  <FK4>  LICZBA  
zdał  TAK/NIE 

STUDENCI 
Id-student  TEKST  (7)
Nazwisko  TEKST  (25) 
Imię  TEKST  (15) 
Data-ur  DATA 
Miejsce  TEKST  (15) 

PESEL  TEKST  (11) 
Kod-poczta  TEKST  (5)
Miasto  TEKST  (15) 
Ulica  TEKST  (30) 
Numer  TEKST  (8) 
Tel  TEKST  (12) 
Fax  TEKST  (12) 
E-mail  TEKST  (30) 
nr-ECDL  TEKST  (9) 
data-ECDL  DATA 

OSRODKI 
Id-osrodek  LICZBA  
nazwa-o  TEKST  (30)
Kod-poczta  TEKST  (5)
Miasto  TEKST  (15) 
Ulica  TEKST  (30) 
Numer  TEKST  (8) 

PRZEDMIOTY 
Id-przedmiot  LICZBA 
nazwa-p  TEKST  (40) 
opis  TEKST  (200) 

przeprowadza 

zdaje

jest tematem

jest miejscem

 

 

 

©Piotr Muryjas, 

Instytut Informatyki, Politechnika Lubelska

 2 

background image

 

OBIEKTY BAZY DANYCH ACCESS 

Baza danych - zbiór obiektów, umożliwiających gromadzenie, prezentowanie 
i wykonywanie operacji na danych.  

 

Rodzaje obiektów: 

•  tabele - miejsce przechowywania danych 

•  kwerendy (zapytania) - konstrukcje umożliwiające wykonywanie operacji na 

danych (wyświetlanie, aktualizowanie, usuwanie, kopiowanie) 

•  formularze - elementy interfejsu użytkownika, umożliwiające prezentowanie 

i wprowadzanie danych do BD 

•  raporty - konstrukcja umożliwiająca budowę zestawień danych w różnych 

przekrojach informacyjnych 

•  makra - zbiory akcji wykonywanych na obiektach BD np. na formularzach, 

zapytaniach 

•  moduły - zbiory funkcji i procedur wykonywanych w makrach lub podczas 

zaistnienia zdarzeń skojarzonych z elementami formularzy 

 

Z

ASADY NAZYWANIA OBIEKTÓW 

BD A

CCESS

 

•  nazwa obiektów zawiera max 64 znaki, łącznie ze spacjami 
•  nazwa nie może zawierać znaków "!" - wykrzyknik, "." - kropka, "[]" - nawiasy 

prostokątne, "'"  - cudzysłów 

•  w nazwach nie są rozróżniane duże i małe litery 

•  nazwy obiektów powinny być niepowtarzalne w poszczególnych grupach 

obiektów 

•  nazwa obiektu powinna precyzyjnie określać rodzaj obiektu i wskazywać na jego 

zawartość informacyjną 

•  nazwy nie powinny być zbyt długie

©Piotr Muryjas, 

Instytut Informatyki, Politechnika Lubelska

 3 

background image

 

Przykłady poprawnych nazw obiektów BD ACCESS:  

1/ 

Egzaminy ECDL 

2/ 

Egzaminy_ECDL 

3/ 

1998 Egzaminy w Lublinie 

Z

ASADY ODWOŁYWANIA SIĘ DO OBIEKTÓW 

BD ACCESS 

[obiekt]![element_obiektu] 

rodzaj_obiektu![obiekt]![element_obiektu] 

[obiekt]![element_obiektu].własność_elementu 

rodzaj_obiektu![obiekt]![element_obiektu].własność_elementu 

 

•  rodzaj_obiektu - nazwa rodzaju obiektu np. dla formularzy - Formularze 

•  obiekt - nazwa obiektu np. Egzaminatorzy_dane 

•  element_obiektu - nazwa pola tabeli, pola kwerendy lub elementu formularza 

•  własność_elementu - nazwa własności pola kwerendy, elementu formularza lub 

raportu 

Przykłady:  

1. 

[Ośrodek]![Nazwa-o] 

2. 

Formularze![Egzaminatorzy_dane]![Id-egz] 

3. 

Formularze![Egzaminatorzy_dane]![Id-egz].Visible 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

TYPY DANYCH W BD ACCESS 

Typ danych – zbiór możliwych wartości pola tabeli (dziedzina) 

 

N

AZWA TYPU

 

O

PIS

 

TEKST 

Typ znakowy o max liczbie n znaków; n - max 255 

MEMO (NOTA) 

Typ znakowy, max 65 535 znaków 

LICZBA 

Bajt – liczby naturalne od 0 do 255 
Liczba całkowita
 – liczby całkowite od -32 768 do 32 767 
Liczba całkowita długa 
– liczby całkowite od -2 147 483 648 do 2 147 647 
Pojedyncza precyzja
 – liczby rzeczywiste od -3.402823E38 do 3.402823E38 
Podwójna precyzja
 – liczby rzeczywiste od –1.7976931349E308 do 

1.7976931349E308 

DATA/GODZINA  Data i czas 

WALUTOWY 

Typ liczbowy, 2 miejsca po przecinku 

AUTONUMER 

Typ liczbowy; kolejne lub losowe liczby automatycznie generowane przez 
SZBD MS Access 

TAK/NIE 

Typ logiczny; przyjmujący tylko dwie wartości PRAWDA lub FAŁSZ 

OLE OBJECT 

Obiekt utworzony w dowolnej aplikacji posługującej się techniką OLE (np. 
obrazy, wykresy) 

HIPERŁĄCZE 

Typ znakowy tworzących adres hiperłącza do strony WWW, pliku lub 
miejsca w pliku 

U

WAGI DOTYCZĄCE STOSOWANIA TYPÓW DANYCH

 

Typ TEKST:  

•  przeznaczony dla pól zawierających ciągi dowolnych znaków lub pól 

zawierających liczby (cyfry), które nie podlegają operacjom matematycznym np. 
kod pocztowy, numer telefonu, numer domu i mieszkania 

 

Typ WALUTOWY:  

•  przeznaczony dla pól zawierających wartości wyrażone w jednostkach 

monetarnych lub procentach 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

Typ LICZBA:  

•  przeznaczony dla danych, na których będą wykonywane obliczenia matematyczne 

(z wyjątkiem danych reprezentujących wartości wyrażone w jednostkach 
monetarnych) 

•  należy wybierać typ, którego zakres jest zgodny z przewidywanym zakresem 

zmienności wartości pola 

•  wybór rozmiaru typu większego niż jest to konieczne wydłuża czas przetwarzania 

danych oraz powoduje zwiększenie zajętości pamięci dyskowej 

 

Typ AUTONUMER:  

•  liczby generowane w sposób ciągły począwszy od 1 lub wybierane losowo 

•  zapewnia niepowtarzalność wartości w danym polu 

•  używany dla pól, które są elementem klucza głównego (PRIMARY KEY) 

 

Typ HIPERŁĄCZE:  

•  umożliwia odwoływanie się z poziomu bazy danych do danych typu strona 

WWW, określone miejsce na stronie WWW, dokument, zakładka dokumentu, 
arkusz kalkulacyjny (konkretna komórka lub blok komórek), prezentacja 
graficzna lub jej wskazany slajd, formularz lub raport bazy danych MS Access 

•  dana typu HIPERŁĄCZE może składać się z trzech części oddzielonych znakiem 

#:  

tekst_wyświetlany#adres_danych#podadres 

np.   WSPA#www.wspa.lublin.pl 

 

BD#D:\WSPA\WYKŁADY\bazy.doc 

   ECDL#D:\WSPA\ecdl.mdb#Form 

Egzaminowani 

   Slajd#D:\WSPA\prezent.ppt#5 

   Oceny#D:\WSPA\zaliczenie.xls#OCENY 

dana typu HIPERŁĄCZE musi obowiązkowo zawierać część adres_danych
pozostałe części są opcjonalne 

• 

•  każda część adresu może zawierać max 2048 znaków 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

K

ONWERSJA TYPÓW DANYCH

 

Na 

Uwagi 

Wszystkie typy 

Memo 

Usunięcie indeksów 

 Tekst 

Długość typu - max 255 znaków 

Tekst Liczba, 

Waluta Tekst zawiera tylko cyfry 

 Data/Godzina 

Tekst zawiera datę w akceptowanym formacie 

 Tak/Nie 

Tekst zawiera słowa: Tak, Nie, Prawda, Fałsz, 
True, False 

Liczba Waluta Brak ograniczeń konwersji 

 Tak/Nie 

Liczby z przedziału <-0,5; 0,5> lub wartość NULL 
zamieniana jest na wartość Nie; każda inna 
wartość - na Tak 

Data/Godzina Liczba 

Brak ograniczeń konwersji 

Walutowy Liczba 

Brak ograniczeń konwersji 

 Tak/Nie 

Ograniczenia jak dla konwersji Liczba 

 Tak/Nie 

Autonumer Liczba 

Brak ograniczeń konwersji 

Tak/Nie Liczba, 

Waluta Wartość Tak 

 -1, Nie  0 

 
 

F

ORMATY DANYCH 

 

Format danych – sposób wyświetlania lub drukowania danych przechowywanych 

w bazie danych (format danych nie decyduje o sposobie 
przechowywania danych w bazie danych) 

 

•  Format danych określony jest w definicji tabeli dla każdego pola typu Tekst

MemoLiczbaWalutowyData/Godzina oraz Tak/Nie

•  Format danych dotyczy wszystkich wartości przechowywanych w danym polu. 

•  Format danych zdefiniowany w tabeli stosowany jest także w graficznej 

reprezentacji tych danych w formularzach lub raportach (tzw. formantach).  

 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

F

ORMATY DANYCH NUMERYCZNYCH I LOGICZNYCH

 

Formaty standardowe: 

•  Liczba ogólna – wyświetlanie liczby w postaci, w jakiej ją wprowadzono 

•  Walutowy – wyświetlanie liczby w formacie waluty, zgodnie z ustawieniami 

środowiska MS Windows 

•  Stałoprzecinkowy – wyświetlanie liczby z dokładnością do dwóch miejsc po 

przecinku 

•  Standardowy – format stałoprzecinkowy z wprowadzeniem separatora grup 

tysięcy 

•  Procent – liczba wyświetlana ze znakiem %  

•  Wykładniczy – wyświetlanie liczb w postaci nEm tzn.  n10

m

 

 

Formaty niestandardowe: 

•  , (przecinek) – separator części dziesiętnej np. 999,99 (zgodnie z ustawieniami 

w środowisku MS Windows) 

•  spacja – separator grup tysięcy np. 999 999 

•  0 – wyświetla cyfry lub zera wiodące, jeśli na pozycji nie występuje cyfra np. 

099,00 

•  #  – wyświetla cyfry lub nic, jeżeli na pozycji nie występuje cyfra np. ##,## 

 

P

RZYKŁADY ZASTOSOWANIA FORMATÓW DANYCH NUMERYCZNYCH

 

Dana 

Format 

Rezultat wyświetlany 

190665,505 Liczba 

ogólna 

190665,505 

190665 

Waluta 

190 665,00 zł 

190665,65 Stałoprzecinkowy 190665,65 

190665,65 Standardowy 

190 

665,65 

0,5 Procent  50% 

190665 Wykładniczy 1,91E05 

190665 

000 000,00 

190 665,00 

19066 

### ###,## 

19 066, 

-0,5 00,00 

 

-00,50 

-0,65 ##,## 

-,65 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

F

ORMATY DANYCH TYPU 

DATA/GODZINA 

•  C lub Data ogólna - data wyświetlana w postaci skróconej np. 19-06-65 15:30 

•  DDDDDD lub Data pełna - postać daty: Wtorek 19 czerwca 1965 

•  Data średnia - postać daty: 19 VI 1965 

•  DDDDD lub Data krótka - postać daty: 65-06-19 (zgodnie z ustawieniami 

środowiska MS Windows)  (tylko daty od 00-01-01 do 29-12-31 dotyczą XXI 
wieku) 

•  Godzina pełna - godzina wraz z sekundami np. 15:30:55 

•  Godzina średnia - godzina zapisana w notacji anglosaskiej np. 03:30PM 

•  Godzina krótka - godzina wraz z minutami np. 15:30 

•  znaki "-", "/", ","  -  separatory dni, miesięcy, roku w dacie 

•  znak ":" - separator godzin i minut 

•  D - dzień miesiąca (1-31) 

•  DD - dzień miesiąca (01-31) 

•  DDD - skrócona nazwa dnia tygodnia (Pon, Śro, Sob) 

•  DDDD - pełna nazwa dnia tygodnia (Poniedziałek, Środa, Sobota) 

•  W - numer dnia w tygodniu (1-7) 

•  WW - numer tygodnia w roku (1-54) 

•  M - numer miesiąca (1-12) 

•  MM - numer miesiąca (01-12) 

•  MMM - numer miesiąca (I-XII) 

•  MMMM - pełna nazwa miesiąca (Stycznia, Listopada) 

•  R - numer dnia w roku (1-366) 

•  RR - Rok (00-99) 

•  RRRR - Rok (0100-9999) 

•  G - godzina (0-23) 

•  GG - godzina (00-23) 

•  M - minuty (0-59) 

•  MM - minuty (00-59) 

•  AM/PM - oznaczenie pory dnia 

background image

 

P

RZYKŁADY ZASTOSOWANIA FORMATÓW TYPU DATY

 

Dana 

Format 

Rezultat wyświetlany 

19-06-1965 DD-MM-RRRR 

19-06-1965 

19-06-1965 DD/MM/RR 

19/06/65 

19-06-1965 DDDD 

DD-MM-RR  Wtorek 19-06-65 

12-10-1967 DD-MMM-RR 

12-X-67 

24-04-1998 

DD, MMMM RRRR 

24, kwietnia 1998 

12-10-1967 RRRR/MM/DD 

1967/10/12 

12-10-1967 DDDDD 

12-10-67 

10:45 GG:MM 

10:45 

15:45 GG:MM 

15:45 

15:45 

GG:MM AM/PM 

03:45 pm 

 

F

ORMATY DANYCH TYPU 

TEKST 

•  @ - wyświetlany jest wprowadzony tekst lub znak; jeśli nie ma znaku 

wyświetlana jest spacja z lewej strony 

•  & - wyświetlany jest wprowadzony tekst lub znak; jeśli nie ma znaku nic nie jest 

wyświetlane 

•  > - wprowadzony tekst wyświetlany jest jako duże litery (faktycznie 

przechowywane są znaki tak jak je wprowadzono) 

•  < - wprowadzony tekst wyświetlany jest jako małe litery (uwaga j.w.) 

 

P

RZYKŁADY ZASTOSOWANIA FORMATÓW  DANYCH TYPU 

TEKST 

Dana 

Format 

Rezultat wyświetlany 

Jan 

@@@@@ 

   Jan 

Jan &&&&& 

Jan 

Adam > 

ADAM 

ADAM < 

adam 

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

10 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

11 

O

GÓLNE FORMATY WYŚWIETLANIA DANYCH

 

a) mogą być użyte w definicji formatu dla danych dowolnego typu 

b) modyfikują formaty wyświetlania zdefiniowane przez użytkownika (formaty 

niestandardowe) 

c) dotyczą następujących możliwości:   

•  wyświetlania dowolnego ciągu znaków w polu poprzez umieszczenie tekstu 

pomiędzy znakami "" np. "Dnia" DD-MM-RR 

•  wyświetlania dowolnego jednego znaku w polu poprzez umieszczenie go po 

znaku \ (backslash) 

•  wyświetlania w polu znaku spacji 

•  wymuszenia lewostronnego wyrównania danych w polu - znak ! 

•  wypełniania wolnego miejsca w wyświetlanym polu podanym znakiem - * 

znak 

•  wyświetlanie wartości pola w określonym kolorze - umieszczenie koloru 

w nawiasach prostokątnych np. [czerwony], [zielony], [niebieski], [błękitny], 
[purpurowy] 

 

P

RZYKŁADY ZASTOSOWANIA OGÓLNYCH FORMATÓW DANYCH 

 

Dana 

Format 

Rezultat wyświetlany 

14-02-2002 

"Dnia: " DDDDD 

Dnia: 14-02-02 

0500324 "PL-"@@@@@  PL-0500324 

Adam > 

[Niebieski] 

ADAM 

 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

12 

M

ODYFIKACJA FORMATU WYŚWIETLANIA DANYCH

 

a)  modyfikacja dotyczy różnego sposobu wyświetlania danych w zależności od 

wartości pola tabeli 

b)  modyfikacja formatu polega na umieszczeniu definicji formatu w sekcjach 

oddzielonych znakiem średnika (od jednej do czterech sekcji) 

c)  dla danych liczbowych i walutowych definicja formatu może być umieszczona 

w 4-ech sekcjach i dotyczy kolejno sposobu wyświetlania liczb (kwot) dodatnich, 
liczb (kwot) ujemnych, wartości zero lub nieokreślonej 

d)  dla danych tekstowych definicja formatu może być umieszczona w 3-ech 

i dotyczy kolejno sposobu wyświetlania ciągu znaków o niezerowej długości, 
ciągu znaków o zerowej długości (dwa znaki "") oraz wartości nieokreślonej 

e)  dla danych typu logicznego definicja formatu może być umieszczona w 3-ch 

sekcjach; pierwszej sekcji nie definiuje się, w drugiej sekcji określony jest sposób 
wyświetlania wartości PRAWDA, w trzeciej - wartości FAŁSZ 

f) możliwe jest pominięcie definicji w dowolnej sekcji; wówczas domyślnie jest 

przyjmowana definicja z sekcji poprzedniej 

 

P

RZYKŁADY MODYFIKACJI FORMATÓW

 

Dana 

Format 

Rezultat wyświetlany 

-150 ###;"Debet";"Stan 

zerowy" 

Debet 

###;"Debet";"Stan zerowy" 

Stan zerowy 

NULL 

###;"Debet";###; "Nieznane saldo" 

Nieznane saldo 

NULL 

>; "Brak"; "Nieznany" 

Nieznany 

"" 

>; "Brak"; "Nieznany" 

Brak 

PRAWDA ;"Zapłacono";"Do zapłacenia" Zapłacono 

FAŁSZ ;"Zapłacono";"Do zapłacenia" Do 

zapłacenia 

 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

13 

M

ASKA WPROWADZANIA DANYCH

 

Maska - szczegółowy sposób określenia sposobu wprowadzania i wyświetlania 

danych 

a)  maska pozwala dokładnie określić rodzaj znaków (litery, cyfry, spacje), które 

muszą zostać wprowadzone w danym miejscu pola 

b) symbole 

używane w maskach: 

0 - dowolna cyfra (bez znaku), która musi zostać wprowadzona (wymagalność 

wprowadzenia) 

9 - dowolna cyfra (bez znaku), która może zostać wprowadzona lub puste miejsce 

(opcjonalność wprowadzenia) 

# - dowolna cyfra (ze znakiem lub bez) lub nic (opcjonalność wprowadzenia) 

L - dowolna litera, która musi zostać wprowadzona (wymagalność 

wprowadzenia) 

? - dowolna litera lub nic (opcjonalność wprowadzenia) 

A - dowolna litera lub cyfra, która musi być wpisana (wymagalność 

wprowadzenia) 

a - dowolna litera, cyfra lub nic (opcjonalność wprowadzenia) 

& - dowolny znak, który musi być wpisany (wymagalność wprowadzenia) 

C - dowolny znak lub nic (opcjonalność wprowadzenia) 

> - zamiana liter następujących po znaku na duże 

< - zamiana liter następujących po znaku na małe 

! - wypełnianie pola od prawej do lewej 

Password - ukrycie wprowadzanych znaków 

c) maska 

umożliwia kontrolę poprawności danych tylko na etapie ich 

wprowadzania do pola tabeli lub modyfikacji, nie umożliwia kontroli 
poprawności wartości dla danych już przechowywanych w bazie danych 

d)  maska wykorzystywana jest także podczas wprowadzania danych 

w formularzach (w tzw. formantach) 

e)  maska ignorowana jest podczas importowania danych z plików zewnętrznych 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

14 

P

RZYKŁADY ZASTOSOWANIA MASKI WPROWADZANIA

 

Dana 

Maska 

Rezultat 

wl5188999 LL00000 

wl5188999 

wl5188999 >LL0000000  WL5188999 

wl5188999 <L>L0000000 wL5188999 

LBN5485 

LLL 000A 

LBN 5485 

WXG800R LLL000A 

WXG800R 

20141 00\-000  20-141 

815252046 \(00\) 

000\-00\-00 (81) 

525-20-46 

65061900060 00000000000 

65061900060 

beata >L<?????????? 

Beata 

 
 

U

WAGI DOTYCZĄCE STOSOWANIA MASKI WPROWADZANIA DANYCH

 

•  Zdefiniowanie maski dla danych typu tekstowego wymaga, by ilość znaków maski 

była równa rozmiarowi pola; jeśli rozmiar pola jest większy od ilości znaków 
maski, wówczas nie będzie możliwe wprowadzenie większej liczby znaków równej 
zadeklarowanemu rozmiarowi pola. 

•  Jeśli dla danego pola zdefiniowano format oraz maskę wprowadzania, to wyższy 

priorytet posiada definicja formatu wyświetlania (maska nie jest brana pod 
uwagę). 

•  Definicja maski zazwyczaj nie jest przechowywana w BD; jednak można ją 

zapamiętać stosując postać maski składającą się z sekcji (0 - oznacza 
zapamiętanie maski, 1 - pominięcie): 

00\-000;0 lub 00\-000;1 

•  Istnieje możliwość zmiany standardowego sposobu szablonu wprowadzania 

danych ze znaku podkreślenia _ na inny znak; wymaga to wskazania w trzeciej 
sekcji definicji maski nowego znaku wyświetlania: 

00\-000;1;# lub 00\-000;1;* 

 

 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

15 

DEFINIOWANIE BAZY DANYCH ACCESS 

1.  Definicja struktury tabeli. 

2.  Definicja indeksów w tabeli. 

3. Definicja związków pomiędzy tabelami.  

4.  Wprowadzenie danych do tabeli.  

5. Definicja zapytań (kwerend). 

6.  Budowa interfejsu użytkownika (formularzy). 

7.  Definicja makr i innych modułów. 

8.  Tworzenie raportów.  

 

Definiowanie obiektów BD odbywa się z poziomu centrum sterowania, w którym 

dostępne są różne kategorie obiektów (tabele, kwerendy, formularze, raporty, makra, 

moduły).  

D

EFINIOWANIE TABEL

 

1.  Wykorzystanie kreatora tabel:  

•  automatyczne definiowanie tabel, 
•  łatwość i duża szybkość definiowania poszczególnych tabel i ich pól, 
•  standardowe wzorce tabel, 
•  konieczność uzupełnienia definicji istniejących obiektów i ich elementów, 
•  konieczność wprowadzenia warunków integralności dla poszczególnych pól, 
•  konieczność definiowania dodatkowych indeksów. 

2.  Definiowanie tabel według wymagań projektanta: 

•  dostosowania struktury tabel do indywidualnych potrzeb użytkownika BD, 
•  definiowanie własności pól z użyciem dowolnych formatów dla danego typu 

danych, 

•  możliwość definiowania indeksów opartych na dowolnych polach, 
•  przyjazny interfejs definiowania związków pomiędzy tabelami (tzw. relacji) 

oraz określanie rodzaju związku.  

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

16 

T

ECHNIKA DEFINIOWANIA STRUKTURY TABEL

 

1. Określenie nazwy pola tabeli (kolumna Nazwa pola). 

2.  Wskazanie typu danego pola (kolumna Typ danych) poprzez wybór z listy. 

3.  Opcjonalnie wprowadzenie opisu zawartości informacyjnej pola (kolumna Opis). 

4. Zdefiniowanie własności pola (wykorzystanie kreatorów).  

5.  Powtórzenie kroków 1-4 dla kolejnych pól tabeli. 

6.  Zapisanie tabeli pod właściwą nazwą.  

 

Uwagi dotyczące definiowania pól tabeli: 

a) dla każdego pola należy zdefiniować własności, które szczegółowo charakteryzują 

pola i ułatwiają wprowadzanie wartości do tabeli 

b) rodzaj właściwości zależy od wybranego typu danych 

c)  projekt tabeli powinien być wykonany ze szczególną starannością 

d)  na etapie definiowania tabeli często wykonuje się także określenia jej indeksów 

 

W

ŁAŚCIWOŚCI PÓL

 

•  Rozmiar pola - max liczba znaków (255) lub zakres liczb 

•  Format - sposób wyświetlania wprowadzonych danych np. @@@@@ lub Bajt 

•  Maska wprowadzania - szczegółowy sposób wyświetlania danych podczas ich 

wprowadzania np. LL0000000, ###,## 

•  Tytuł - etykieta pola, wyświetlana podczas prezentowania danych z tabeli (zamiast 

nazwy pola) 

•  Wartość domyślna - wartość przypisywana automatycznie do pola w nowym 

rekordzie 

•  Reguła poprawności - warunek jaki muszą spełniać wprowadzane dane 

•  Komunikat o błędzie - komunikat wyświetlany w sytuacji, gdy wprowadzone dane 

nie spełniają reguł poprawności 

•  Wymagane - czy pole musi być wypełnione w rekordzie (Tak/Nie) 

•  Zerowa długość dozwolona - dozwolony ciąg znaków o zerowej długości tj. "" 

•  Indeksowane - tworzenie indeksu opartego na danym polu 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

17 

D

EFINIOWANIE REGUŁ POPRAWNOŚCI

 

Reguły poprawności: 

•  to warunki, jakie muszą spełniać wartości wprowadzane do pola danych 

(własność pola tabeli) np. Data-ECDL = Date() 

•  to warunki, jakie muszą spełniać dane w całym rekordzie tzn. odwołujące się do 

innych pól w rekordzie (własność tabeli) np. Data-ur  <  Data-ECDL 

•  można definiować przy pomocy kreatora wyrażeń lub bezpośrednio z klawiatury 
•  nie mogą zawierać więcej niż 255 znaków 
 

Operatory używane w regułach poprawności: 

•  operatory porównania: <, >, <=, >=, <> 
•  operator LIKE - możliwe porównanie z zadanym wzorcem, zdefiniowanym przy 

pomocy znaków ? (pojedynczy znak), * (dowolny ciąg znaków), # (pojedyncza 

cyfra), [k-z] dowolny znak z podanego zakresu, [!k-z] - dowolny znak nie 

należący do podanego zakresu 

•  operatory SQL: 

IN (lista_wartości) np. IN (0; 0,07; 0,22), IN (0; 1) 

BETWEEN ... AND ... np. BETWEEN #19-06-65# AND #19-06-98# 

IS [NOT] NULL np. nr-ECDL IS NULL 

•  operatory logiczne AND i OR używane do łączenia wielu warunków (operator 

AND ma wyższy priorytet od operatora OR) 

 

Przykłady: 

1. 

LIKE "[M]*" OR LIKE "[K]*" 

2. 

NOT LIKE "[p-z]*" 

3. < 

"Nowak" 

4. 

Data-ur < #19-06-65# 

5. 

Data-ECDL > Data-ur  

6. 

nr-modulu BETWEEN 1 AND 7 

7. 

IN ("Gotówka"; "Czek") 

8. 

IN (100; 200) 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

18 

K

ONTROLA REGUŁ POPRAWNOŚCI

 

•  reguły poprawności należy określać podczas definiowania struktury tabel 

•  reguły poprawności sprawdzane są podczas modyfikacji istniejących rekordów 

lub wprowadzania danych do nowych rekordów 

•  nowe reguły dla tabel zawierających dane mogą być sprawdzane podczas ich 

zapisu do BD 

•  modyfikacja reguł w tabeli zawierającej dane może doprowadzić do ich 

odrzucenia lub akceptacji 

•  akceptacja nowych reguł w sytuacji istnienia rekordów, które ich nie spełniają nie 

powoduje usunięcia tych rekordów z BD 

•  nowe reguły poprawności obowiązują dla tych rekordów, które są modyfikowane 

lub wprowadzane po zdefiniowaniu reguł 

D

EFINIOWANIE WARTOŚCI DOMYŚLNEJ

 

• 

nadawanie wartości domyślnej ułatwia i przyspiesza wypełnianie pól

 

•  wartość domyślna może być ciągiem znaków (tekstem), liczbą, wyrażeniem lub 

funkcją wbudowaną w MS Access 

•  wartość domyślna jest przypisywana do pól tylko dla nowych rekordów 

•  nadawanie wartości domyślnej może odbywać się przy wykorzystaniu kreatora 

wyrażeń 

•  wartość domyślna może być określona dla wszystkich typów z wyjątkiem typu 

AUTONUMER i OLE OBJECT 

 

Przykłady: 

1. = 

0,07 

2. =Date() 

3. =Now() 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

19 

P

RECEDENSY PÓL PUSTYCH I PRAWIE PUSTYCH

 

Wymagane 

Zerowa długość 

Znak w polu 

Wartość pola 

  

Enter 

Puste 

(NULL) 

Nie Nie 

Spacja 

Puste 

(NULL) 

  

"" 

Błąd 

  

Enter 

Puste 

(NULL) 

Nie Tak 

Spacja 

Puste 

(NULL) 

  

"" 

"" 

  

Enter 

Błąd 

Tak Nie 

Spacja 

Błąd 

  

"" 

Błąd 

  

Enter 

Błąd 

Tak Tak 

Spacja 

"" 

  

"" 

"" 

 

•  pole puste zawiera wartość NULL, natomiast pole prawie puste - ciąg znaków 

o zerowej długości tzn. "" 

•  pola puste i prawie puste są jednakowo wyświetlane na ekranie 

•  pola puste i prawie puste można formatować zgodnie z regułami podanymi dla 

poszczególnych sekcji typów danych, prowadząc w ten sposób do rozróżnienia 
tych dwóch wartości 

 

T

WORZENIE INDEKSÓW

 

Indeksy to konstrukcje, które: 

•  przyspieszają wyszukiwanie danych w tabelach; 

•  umożliwiają określanie związków między tabelami tzn. definiowanie relacji;  

•  można definiować na etapie tworzenia tabeli, poprzez określenie własności 

Indeksowane jako Tak lub w dowolnym momencie istnienia BD poprzez wybór 
opcji umożliwiającej indeksowanie; 

•  powinno się tworzyć podczas definiowania struktury danych.  

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

20 

 Atrybuty indeksów: 

•  Podstawowy - klucz posiada własność Primary Key tj. klucza głównego 

•  Unikatowy (Unique) - każda wartość w polu jest niepowtarzalna (unikalna) 

•  Ignoruj Null - pozwala pominąć w indeksie wartości pól równe NULL 

(zmniejszenie rozmiaru indeksu) 

 

Rodzaje indeksów: 

•  proste - indeks oparty na jednym polu; indeksy proste można definiować poprzez 

ustawienie własności Indeksowane jako Tak 

•  złożone - indeks oparty na wielu polach (max 10); konieczne jest wykorzystanie 

opcji Widok/Indeksy 

 

Uwagi dotyczące tworzenia indeksów: 

•  dla jednej tabeli można utworzyć max 32 indeksy 

•  indeksy identyfikowane są poprzez niepowtarzalne nazwy, które można dowolnie 

zmieniać (nie zaleca się zmiany nazwy zastrzeżonej Primary Key dla klucza 
głównego) 

•  dla indeksów prostych domyślną nazwą indeksu jest nazwa pola, na którym 

oparty jest indeks 

•  indeksy proste, definiowane przy pomocy własności pola Indeksowane mogą mieć 

jeden z atrybutów: Tak(Duplikaty OK), Tak(Bez duplikatów) lub Nie 

•  definicja indeksów złożonych wymaga przyporządkowania do jednej nazwy 

indeksu wielu pól wchodzących w skład indeksu 

•  indeksy proste i złożone charakteryzują się określonymi atrybutami 

•  próba zdefiniowania indeksu unikalnego dla pola zawierającego wartości 

powtarzające się kończy się niepowodzeniem 

•  w definicji indeksów określa się także porządek sortowania rekordów (Rosnąco 

lub Malejąco

•  nie można usunąć indeksu typu Primary Key lub unikatowego, jeśli wchodzi on 

w skład definicji związków między tabelami (konieczne jest uprzednie usunięcie 
relacji) 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

21 

M

ODYFIKACJA DEFINICJI TABEL

 

Obejmuje operacje: 

1/  wykonywane na polach tabeli: 

•  zmiana nazwy pól – wykonywana bez ograniczeń 

•  zmiana rozmiaru pola – możliwość utraty informacji na skutek zmniejszenia 

rozmiaru pola 

•  zmiana typu danych w polach – ograniczenia wynikające z konwersji danych 

oraz istniejących związków między tabelami 

•  zmiana wartości domyślnej – wykonywana bez ograniczeń 

•  zmiana reguł poprawności – brak ograniczeń wykonania, jednak może 

prowadzić do naruszenia zasad integralności dla już istniejących danych lub 
odrzucenia nowej definicji reguł 

•  wprowadzenia indeksowania – ograniczenia wykonania dla indeksów 

unikalnych oraz indeksu głównego 

•  zmiany innych właściwości pola (Format, Tytuł, ...) – brak ograniczeń 

wykonania 

2/  wykonywane na całej tabeli: 

•  zmiana kolejności pól w strukturze tabeli (zaznaczenie pól i przesunięcie na 

odpowiednią pozycję) 

•  usunięcie pola (poprzez zaznaczenia wiersza z definicją pola, wciśnięcie 

klawisza Delete

•  dodanie pola (wskazanie wiersza, przed którym nastąpi wstawienie nowego 

pola a następnie wciśnięcie klawisza Insert

•  wprowadzenie lub usunięcie indeksu (wybór opcji lub ikony, określenie 

własności Indeksowane dla pola) 

•  zmiana reguł poprawności – możliwe naruszenie zasad integralności 

istniejących danych lub odrzucenie nowej definicji reguł 

•  zmiany komunikatu wyświetlanego przy naruszenia reguł poprawności 

 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

22 

U

SUWANIE TABEL

 

 

•  odbywa się w centrum sterowania 

•  nie jest możliwe usunięcie tabeli jeśli jest ona elementem relacji (konieczne jest 

uprzednie usunięcie relacji) 

•  usunięcie tabeli jest operacją odwracalną (opcja Cofnij

 
 

Z

WIĄZKI MIĘDZY TABELAMI 

RELACJE

 

Relacje

 – związki między tabelami, umożliwiające powiązanie danych w wielu 

tabelach 

 

Rodzaje relacji: 

•  jeden-do-jeden - jednemu rekordowi z pierwszej tabeli odpowiada dokładnie 

jeden rekord z drugiej tabeli 

•  jeden-do-wielu - jednemu rekordowi z pierwszej tabeli odpowiada wiele rekordów 

z drugiej tabeli 

 

Typy połączeń: 

a) równozłączenie (złączenie zawężające):  

•  złączenie oparte na równości wartości w polach tabel łączonych 

•  umożliwia wybieranie tylko tych rekordów z obu tabel, dla których wartości 

w połączonych polach są równe 

b) złączenie rozszerzające: 

•  lewe połączenie rozszerzające - umożliwia wybieranie wszystkich rekordów 

z pierwszej tabeli i tylko tych rekordów z drugiej tabeli, dla których wartości 
w połączonych polach są równe 

•  prawe połączenie rozszerzające - umożliwia wybieranie wszystkich rekordów 

z drugiej tabeli i tylko tych rekordów z pierwszej tabeli, dla których wartości 
w połączonych polach są równe 

c) samopołączenie - powiązanie różnych pól tej samej tabeli. 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

23 

T

WORZENIE RELACJI

 

a)  wymaga istnienia kluczy indeksowych typu Primary Key lub unikatowego 

b)  wykonywane przez projektanta w oknie Relacje 

 

Liczba związków łączących n tabel:   n-1 

Technika definiowania relacji:  

1.  Z poziomu centrum sterowania wybór ikony Relacje lub opcji Narzędzia/Relacje.  

2.  Wybór tabel, dla których będą definiowane relacje (o ile tabele te nie istnieją 

jeszcze w schemacie relacji). 

3. Użycie techniki drag-and-drop (złap i upuść) w celu wskazania pól wiążących 

tabele.  

4. Jeśli to konieczne, wymuszenie zachowania więzów integralności dotyczących 

kaskadowego aktualizowania i/lub usuwania rekordów powiązanych.  

5. Jeśli to konieczne, określenie typu połączenia między tabelami.  

 
Uwagi dotyczące definiowania relacji:  

•  relacje umożliwiają kontrolę warunków integralności referencyjnej (tzn. dla 

wartości pola po stronie "wiele" istnieje taka sama wartość po stronie "jeden" 
związku między tabelami) 

•  relacja mogą być oparte tylko na polach mających zgodne typy danych 

•  definiowanie relacji opartych na kluczach złożonych wymaga zgodności liczby pól 

w indeksach obu tabel 

•  relacja między tabelami odwzorowana jest graficznie za pomocą linii ciągłej 

łączącej pola wiążące tabele 

•  wszystkie relacje zdefiniowane są w tzw. schemacie relacji, który jest graficzną 

reprezentacją związków między tabelami 

•  usunięcie tabeli ze schematu nie powoduje usunięcia relacji, w skład której 

wchodzi usuwana tabela; związki zdefiniowane między tabelami istnieją 
niezależnie od faktu ich odwzorowania w postaci graficznej 

•  usunięcie lub modyfikacja relacji wymaga uprzedniego jej wskazania 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

24 

•  w schemacie relacji istnieje możliwość wyświetlania relacji bezpośrednich dla 

danej tabeli (tj. takich, których elementem jest dana tabela) lub wszystkich relacji 

•  modyfikacja własności relacji następuje po dwukrotnym kliknięciu na linii będącej 

graficzną reprezentacją związku i ustawieniu nowych własności 

 

 

E

DYCJA DANYCH

 

Edycja danych może odbywać się w arkuszu danych lub w formularzu i obejmuje: 

•  modyfikację istniejących danych, 
•  wprowadzanie danych do tabeli, 
•  usuwanie danych z tabeli.  

W

YŚWIETLANIE DANYCH W ARKUSZU DANYCH

 

a) dane wyświetlane są w postaci tabelarycznej (wiersz – rekord, kolumna – pole 

tabeli) 

b) możliwa jest modyfikacja sposobu wyświetlania danych (opcja Format) poprzez: 

•  zmianę czcionki (opcja Czcionka) lub sposobu wyświetlania komórki (opcja 

Komórki

•  zmianę wysokości i szerokości kolumn (opcje Wysokość wiersza i Szerokość 

kolumny

•  ukrycie kolumn - wskazane kolumny nie są wyświetlane w arkuszu danych 

(opcja Ukryj kolumny

•  zablokowanie kolumn - zablokowane kolumny są widoczne z lewej strony okna 

i nie znikają podczas poziomego przewijania arkusza (opcja Zablokuj kolumny

•  wyświetlenie lub wyłączenie siatki arkusza danych (opcja Linie siatki

c) możliwa jest zmiana kolejności wyświetlanych kolumn (technika drag-and-drop

d) przywrócenie wyświetlania arkusza danych w pierwotnej postaci - opcja 

Format/Odkryj kolumny lub Format/Odblokuj kolumny 

 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

25 

Globalna definicja standardowego sposobu wyświetlania danych w arkuszu danych 

(opcja Narzędzia/Opcje) dotyczy:  

•  domyślnego wyświetlania/wyłączenia siatki, w której wyświetlane są wartości pól; 
•  domyślnej szerokości wszystkich kolumn arkusza danych; 
•  nazwy, rozmiaru i stylu domyślnej czcionki; 
•  efektu wyświetlania komórek.  

 
 

N

AWIGACJA W ARKUSZU DANYCH

 

Nawigacja - proces poruszania się pomiędzy polami oraz rekordami 

 
Nawigacja może odbywać się przy wykorzystaniu następujących klawiszy: 

•  F5 - przeniesienie kursora do pola numeru rekordu; możliwe wprowadzenie 

numeru rekordu, do którego nastąpi przejście 

•  TAB lub ENTER - przejście do następnego pola 
•  SHIFT-TAB - przejście do poprzedniego pola 
•  END - przejście do ostatniego pola w rekordzie 
•  HOME - przejście do pierwszego pola w rekordzie 
•  Ctrl-END - przejście do ostatniego pola w ostatnim rekordzie 
•  Ctrl-HOME - przejście do pierwszego pola w pierwszym rekordzie 
•  Ctrl+

 - przejście do tego samego pola w ostatnim rekordzie 

•  Ctrl+

 - przejście do tego samego pola w pierwszym rekordzie 

 
 

W

PROWADZANIE DANYCH W ARKUSZU DANYCH

 

•  odbywa się poprzez wypełnianie arkusza danych, którego kolumny są kolejnymi 

polami tabeli, a wiersze – rekordami 

•  rekord aktualnie edytowany jest oznaczony znakiem selektora rekordów  

•  pola posiadające wartość domyślną są automatycznie wypełnione 

•  wprowadzenie danych do rekordu, które jeszcze nie zostały zatwierdzone 

sygnalizowane jest znakiem ołówka 

•  zatwierdzenie danych w rekordzie następuje w momencie przejścia do innego 

rekordu lub zamknięcia tabeli 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

26 

•  miejsce wprowadzania nowego rekordu oznaczone jest symbolem gwiazdki 

•  podczas wprowadzania danych można otworzyć okno dialogowe Powiększ - 

<Shift+F2> 

•  wstawianie nowych rekordów następuje domyślnie na końcu arkusza danych; 

może odbywać się także poprzez zaznaczenie rekordów źródłowych i wklejenie 
zawartości schowka 

•  wstawianie rekordów uprzednio skopiowanych do pamięci (schowka) wymaga 

zastosowania techniki Wklej lub Dołącz i wklej  

•  wstawienie rekordów może powodować naruszenia klucza głównego, unikatowego 

tabeli lub reguł poprawności 

 

M

ODYFIKACJA DANYCH W ARKUSZU DANYCH

 

•  wymagane jest przejście do rekordu, który będzie modyfikowany (nawigacja) 

•  jeśli to konieczne, należy przełączyć się z trybu nawigacji do trybu edycji przy 

pomocy klawisza <F2> 

•  możliwe wykorzystanie opcji Edycja/Zamień 

•  nowe dane zostają utrwalone w tabeli tylko wówczas, jeśli spełniają reguły 

poprawności zdefiniowane dla poszczególnych pól jak i dla całej tabeli 

•  nie można modyfikować wartości pola typu AUTONUMER 

•  podczas wprowadzania i modyfikacji danych numerycznych lub typu daty należy 

zachować format wprowadzania zdefiniowany w środowisku MS Windows 

•  modyfikacja lub wprowadzanie danych typu logicznego może odbywać się poprzez 

wstawienie jednej z wartości: 0NieWyłączonyFałsz lub 1TakWłączony
Prawda
 

 
 

U

SUWANIE DANYCH W ARKUSZU DANYCH

 

•  konieczne przejście do rekordu lub zaznaczenie grupy rekordów, które będą 

usuwane (nawigacja) 

background image

 

©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 

27 

•  usunięcie rekordu z jednej tabeli może prowadzić do usunięcia wielu rekordów 

w innych tabelach powiązanych relacjami (własność relacji Kaskadowo usuwaj 
powiązane rekordy

•  usunięcie rekordów jest operacją nieodwracalną