Baza Danych MS Access Wykłady


BAZA DANYCH - MS ACCESS
WYKAADY
dr inż. Piotr Muryjas
Instytut Informatyki
Politechnika Lubelska
BAZA DANYCH ECDL
STUDENCI
Id-student TEKST (7)
Nazwisko TEKST (25)
ImiÄ™ TEKST (15)
EGZAMINATORZY
EGZAMINY Data-ur DATA
Id-egzaminator TEKST (4)
nr-egz LICZBA Miejsce TEKST (15)
Nazwisko TEKST (25)
Id-student TEKST (7) PESEL TEKST (11)
ImiÄ™ TEKST (15)
przeprowadza
zdaje
Id-przedmiot LICZBA Kod-poczta TEKST (5)
Kod-poczta TEKST (5)
Id-egzaminator TEKST (4) Miasto TEKST (15)
Miasto TEKST (15)
Data-egz DATA Ulica TEKST (30)
Ulica TEKST (30)
Id-osrodek LICZBA Numer TEKST (8)
Numer TEKST (8)
zdał TAK/NIE Tel TEKST (12)
Tel TEKST (12)
Fax TEKST (12)
Fax TEKST (12)
E-mail TEKST (30)
E-mail TEKST (30)
nr-ECDL TEKST (9)
data-ECDL DATA
jest miejscem
jest tematem
OSRODKI
Id-osrodek LICZBA
PRZEDMIOTY
nazwa-o TEKST (30)
Id-przedmiot LICZBA
Kod-poczta TEKST (5)
nazwa-p TEKST (40)
Miasto TEKST (15)
opis TEKST (200)
Ulica TEKST (30)
Numer TEKST (8)
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 2
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
ZASADY NAZYWANIA OBIEKTÓW BD ACCESS
" 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
Przykłady poprawnych nazw obiektów BD ACCESS:
1/ Egzaminy ECDL
2/ Egzaminy_ECDL
3/ 1998 Egzaminy w Lublinie
ZASADY ODWOAYWANIA 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 4
TYPY DANYCH W BD ACCESS
Typ danych  zbiór możliwych wartości pola tabeli (dziedzina)
NAZWA TYPU OPIS
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 FAASZ
OLE OBJECT Obiekt utworzony w dowolnej aplikacji posługującej się techniką OLE (np.
obrazy, wykresy)
HIPERACZE Typ znakowy tworzących adres hiperłącza do strony WWW, pliku lub
miejsca w pliku
UWAGI DOTYCZCE 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 5
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 HIPERACZE:
" 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 HIPERACZE 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\WYKAADY\bazy.doc
ECDL#D:\WSPA\ecdl.mdb#Form Egzaminowani
Slajd#D:\WSPA\prezent.ppt#5
Oceny#D:\WSPA\zaliczenie.xls#OCENY
" dana typu HIPERACZE musi obowiązkowo zawierać część adres_danych;
pozostałe części są opcjonalne
" każda część adresu może zawierać max 2048 znaków
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 6
KONWERSJA TYPÓW DANYCH
Z 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
Tekst zawiera słowa: Tak, Nie, Prawda, Fałsz,
Tak/Nie
True, False
Liczba Waluta
Brak ograniczeń konwersji
Liczby z przedziału <-0,5; 0,5> lub wartość NULL
Tak/Nie
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
FORMATY 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,
Memo, Liczba, Walutowy, Data/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).
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 7
FORMATY 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. n10m
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. ##,##
PRZYKAADY 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 8
FORMATY 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 9
PRZYKAADY 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
FORMATY 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.)
PRZYKAADY 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
OGÓ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]
PRZYKAADY 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 11
MODYFIKACJA 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 FAASZ
f) możliwe jest pominięcie definicji w dowolnej sekcji; wówczas domyślnie jest
przyjmowana definicja z sekcji poprzedniej
PRZYKAADY MODYFIKACJI FORMATÓW
Dana Format Rezultat wyświetlany
-150 ###;"Debet";"Stan zerowy" Debet
0 ###;"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
FAASZ ;"Zapłacono";"Do zapłacenia" Do zapłacenia
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 12
MASKA 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 13
PRZYKAADY ZASTOSOWANIA MASKI WPROWADZANIA
Dana Maska Rezultat
wl5188999 LL00000 wl5188999
wl5188999 >LL0000000 WL5188999
wl5188999 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 >LUWAGI DOTYCZCE 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;*
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 14
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).
DEFINIOWANIE 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.
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 15
TECHNIKA 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
WAAŚ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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 16
DEFINIOWANIE REGUA 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)
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 17
KONTROLA REGUA 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ł
DEFINIOWANIE 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()
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 18
PRECEDENSY 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
TWORZENIE 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.
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 19
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)
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 20
MODYFIKACJA 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 21
USUWANIE 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)
ZWIZKI MIDZY 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.
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 22
TWORZENIE 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 23
" 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
EDYCJA 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.
WYÅš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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 24
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.
NAWIGACJA 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
WPROWADZANIE 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
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 25
" miejsce wprowadzania nowego rekordu oznaczone jest symbolem gwiazdki
" podczas wprowadzania danych można otworzyć okno dialogowe Powiększ -

" wstawianie nowych rekordów następuje domyślnie na końcu arkusza danych;
może odbywać się także poprzez zaznaczenie rekordów zró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
MODYFIKACJA 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
" 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: 0, Nie, Wyłączony, Fałsz lub 1, Tak, Włączony,
Prawda
USUWANIE DANYCH W ARKUSZU DANYCH
" konieczne przejście do rekordu lub zaznaczenie grupy rekordów, które będą
usuwane (nawigacja)
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 26
" 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ą
©Piotr Muryjas, Instytut Informatyki, Politechnika Lubelska 27


Wyszukiwarka

Podobne podstrony:
Baza danych w programie Access
Relacyjna baza danych Access 2007
MS Access
MS Access 2000 PL Zaawansowane techniki programowania
BAZA DANYCH GEOLOGICZNYCH
BAZA DANYCH GMINNEJ EWIDENCJI ZABYTKÓW
MS Access 97 PL Zaawansowane techniki programowania
Algorytmy i struktury danych Programy do wykladu 3

więcej podobnych podstron