Baze podataka i Microsoft Access

Download Report

Transcript Baze podataka i Microsoft Access

Baza podataka je skup međusobno povezanih
podataka, pohranjenih u vanjskoj memoriji
računala.
 Podaci su istovremeno dostupni raznim
korisnicima i aplikacijskim programima.
 Ubacivanje, promjena, brisanje i čitanje
podataka obavlja se posredstvom posebnog
softvera, takozvanog sustava za upravljanje
bazom podataka (DBMS-a).
 Korisnici i aplikacije pritom ne moraju
poznavati detalje fizičkog prikaza podataka,
već se referenciraju na neku idealiziranu
logičku strukturu baze.

Izvor: R. Manger, skripta iz kolegija Baze podataka
Podaci u bazi moraju biti logički organizirani u
skladu s modelom kojeg podržava odabrani
DBMS
 Danas dominantan model: relacijski
 Relacijski model je zasnovan na matematičkom
pojmu relacije: i podaci i veze među podacima
prikazuju se tablicama koje se sastoje od redaka
i stupaca.
 MS Access radi s relacijskim modelom baze
podataka.

Izvor: R. Manger, skripta iz kolegija Baze podataka
Tablice trebaju biti tako konstruirane da se
podaci što manje ili – bolje – uopće ne
dupliciraju, tj. da se neka informacija ne
pojavljuje na više mjesta
Redni broj Ime i prezime Odjel
Upravitelj
 Primjer:

1.
Ana Anušić
prodaja
Željka Žurić
2.
Branko Bilić
nabava
Vesna Vukić
3.
Ciprijan Cerić
prodaja
Željka Žurić
4.
Darija Dukić
nabava
Vesna Vukić
Tablica FIRMA

Razbijamo na manje logičke tablice, između
kojih uspostavljamo relacijsku vezu
Redni broj
Ime i prezime
Odjel
1.
Ana Anušić
prodaja
2.
Branko Bilić
nabava
3.
Ciprijan Cerić
prodaja
Odjel
Upravitelj
4.
Darija Dukić
nabava
prodaja
Željka Žurić
nabava
Vesna Vukić
Tablica ZAPOSLENICI

Tablica ODJELI
Relacija je logička veza između dviju ili više
tablica, preko polja koje im je zajedničko






Relacijski model zahtijeva da se baza podataka sastoji od skupa
pravokutnih tablica – takozvanih relacija.
Svaka relacija ima svoje ime po kojem je razlikujemo od ostalih
u istoj bazi.
Jedan stupac relacije obično sadrži vrijednost jednog atributa
(za entitet ili vezu) – zato stupac (polje) poistovjećujemo s
atributom i obratno.
Atribut ima svoje ime po kojem ga razlikujemo od ostalih u istoj
relaciji. Dopušta se da dvije relacije imaju atribute s istim
imenom, no tada se podrazumijeva da su to ustvari atributi s
istim značenjem.
Vrijednosti jednog atributa su podaci iste vrste. Vrijednost
atributa mora biti jednostruka i jednostavna (ne ponavlja se, ne
da se rastaviti na dijelove). Pod nekim uvjetima toleriramo
situaciju da vrijednost atributa nedostaje (nije upisana).
Jedan redak (zapis, slog) relacije obično predstavlja jedan
primjerak entiteta, ili bilježi vezu između dva ili više
primjeraka. U jednoj relaciji ne smiju postojati dva jednaka
retka.
Text (ASCII), max. 255 znakova u polju
 Memo – tekst duljine do 65536 znakova
 Number – numerički podaci s kojima se računa
 Date/Time
 Currency
 AutoNumber
 Yes/No
 OLE object – multimedijalno polje, do 1GB
 Hyperlink – do 2048 znakova

Svaki zapis mora imati svoje ključno polje koje
jednoznačno definira vrijednosti u ostalim
poljima tog zapisa
 Ne smije se ponoviti i mora imati upisanu
vrijednost u svakom zapisu
 Da bismo mogli povezivati tablice, svake dvije
moraju imati po jedno zajedničko polje
 Preciznije: vidi str. 44, R. Manger, skripta iz
Baza podataka

Osmislite svako po jednu bazu podataka koju
ćete napraviti
 Definirajte prikladne atribute (polja) kojima će
biti opisani zapisi te odaberite primarni ključ
(bar 5 atributa!)

*.mdb – Office 2003 i starije, *.accdb – Office 2007
Objekti: tablice (tables), upiti (queries), obrasci
(forms), izvještaji (reports), stranice (pages),
makronaredbe (macros), moduli (modules)
 Podaci se pohranjuju u tablicama, pomoću upita
vadimo iz njih samo one zapise koji nas zanimaju,
preko obrazaca možemo prilagoditi unos i
pregledavanje, izvještaje koristimo pri ispisu
podataka, stranice omogućuju unos podataka
preko web-stranica, makronaredbe olakšavaju
obavljanje često izvođenih operacija, a moduli
omogućuju kreiranje vlastitih programa (u
Microsoft Visual Basicu)








Design view olakšava definiranje polja, njihovih
imena i tipova, a omogućuje i opis pojedinih polja
Datasheet view prikazuje tablicu u standardnom
obliku
Kreirajte tablicu za temeljne zapise vaše baze
podataka (ne koristite “čarobnjake”!) koristeći design
view
Pazite na smislenost i jednoznačnost naziva polja i na
primarni ključ!
Unesite prva dva zapisa vaše baze, u datasheet view-u
MS Access automatski sprema podatke i ne pita želite
li spremiti promjene, pri brisanju nema mogućnosti
povratka

Za tekst
 < : mala slova
 >: velika slova
 @: znak (npr. \K@@@-@@-@ će nizove od 6 znakova,
npr. abcdef, prikazivati kao Kabc-de-f)

Za brojeve
 General Number (3456,89)
 Currency – koristi separator za tisućice i ostale lokalne
postavke za novčane iznose (3.456,89 kn)
 Percent – pomnoži sa 100 i stavi znak % iza broja
 Scientific – koristi znanstvenu notaciju (3,46E+03)
Navigacija po zapisima
 Unos novog zapisa
 Ispravak postojećeg podatka
 Brisanje zapisa
 Dodavanje novog polja postojećoj tablici
 Prilagođavanje širine stupaca
 Pronalaženje i zamjena podataka
 Sortiranje podataka
 Promjena redoslijeda stupaca
 Ispis (rijetko)

Olakšavaju unos podataka
 Tehnike izrade: AutoForm (najbrže,
tipizirano), Form Wizard, Design View (u MS
Access 2007 drugačije)
 Sprema se kao i tablica, pod vlastitim imenom
 Unos novog zapisa: NewRecord
 Brisanje zapisa, sortiranje, filtriranje
 Važno: nakon svakog filtriranja mora se za
prikaz svih (nefiltriranih) podataka aktivirati
Remove Filter/Sort (2003) odnosno Toggle
Filter (2007)


Kreirajte obrazac za unos podataka za svoju
tablicu i koristeći njega unesite još 5 zapisa,
promijenite 1 postojeći i obrišite 1
Filter by/excluding selection  ako smo
trenutno u nekom polju zapisa, možemo naći
zapise koji se s tim zapisom podudaraju (ili
razlikuju) u tom polju
 Filter by form  unos uvjeta u obrazac, sve što
je u jednom obrascu tretira se kao povezano
logičkim “i”, a imamo i mogućnost
kombiniranja putem “Or”

Izrada – slično kao obrasci
 Cilj: pregledan i lijep ispis
 Otkrijte kako podesiti izgled tako da za svoju
malu bazu kreirate izvještaj


lak odabir tipova podataka za pojedina polja,
veličine polja, primarnog ključa, formata,
default vrijednosti …
Vizualna provjera, niz znakova koji su “čuvari
mjesta”
 Npr. želite unositi telefonske brojeve od 10
znakova – input mask (999) 00-00-000 će
značiti da se prve tri znamenke ne moraju
unijeti (može se unijeti praznina), a ostalih 7
moraju
 C dozvoljava unos slova ili praznine, L
zahtijeva unos slova, npr. >L<????????? Očekuje
max. 10 slova, prvo će prikazati veliko, a ostala
mala

Validation rule: ako ga podatak ne zadovolji,
prikazat će se Validation text
 Npr. Validation rule: <=1000 Validation text:
Previše!  ako se unese broj veći od 1000,
ispisat će se Previše! (i mora se ispraviti
podatak)

Upit izdvajanja (select query) – svaki upit je
inicijalno takav
 Akcijski upit (action query)
 Relacijski operatori: =Zagreb, <5, >7, <=1, >=0,
<>Julija, Between 1 And 2, Is Null, Like “S*”
 Logički operatori: AND, OR, NOT

Pokretanje upita
TABLICA (iz koje će
se dohvaćati
podaci)
Nazivi polja koja će se prikazati upitom
Prikazati ili ne
kad se izvuku
podaci
Kriteriji za
odabir
Kriteriji navedeni u istom redu povezuju se operatorom AND!
Pri svakom pokretanju upit iznova učitava podatke iz tablice(a).
Rezultati će biti vidljivi u Datasheet View.
ULAZNO
PODRUČJE
IZLAZNO
PODRUČJE
Osim što se upitom mogu izdvojiti zapisi koji
zadovoljavaju određene kriterije, mogu se i iz
tablica izračunavati određeni dodatni podaci
 Izračunata polja su virtualna (postoje dok ne
zatvorimo upit), ali se temeljem njih može raditi i
sortiranje, izdvajanje i ostale operacije
 Svojstva (properties) se postavljati i za
izračunata polja, kao i za sva ostala
 Kao ime (u retku Field) unosimo naziv:izraz, a ne
unosimo ime tablice (u retku Table)
 Naziv je ime koje damo polju, a izraz je formula
temeljem koje će se računati


Poskupljenje:[Cijena]*1,10
› množi iznose iz polja Cijena s 1,10

Profit:[Prihod]-[Trosak]
› Izračunava razlike polja Prihod i Trosak
Primjerice, želimo zbroj svih vrijednosti nekog
stupca tablice
 Treba upotrijebiti alat Totals (Σ) – dobijemo
dodatni red u izlaznom području upita
 Npr. odaberemo samo jedno polje iz jedne
tablice i za to polje pod Totals odaberemo Sum
 dobit ćemo zbroj tog stupca
 Opcija Group By u Totals omogućuje da se
podaci grupiraju, npr. za polje Godina navedemo
Group By, a za polje Uplata stavimo Sum 
dobit ćemo zbrojeve uplata po godinama


Relacijsku vezu između dvije tablice koje su u
ulaznom području postavljamo tako da mišem
zahvatimo ime nekog polja u jednoj i ne
ispuštajući tipku miša povučemo do
odgovarajućeg (istoznačnog) polja u drugoj
tablici

Izradite bazu podataka na odabranu temu. Baza
se mora sastojati od najmanje tri (smislene)
tablice, odabrane u skladu sa zahtjevom što
manje redundancije podataka. Svaka tablica mora
sadržavati najmanje po 20 zapisa, a za ukoliko za
njena polja postoje smislena ograničenja,
upotrijebite ih. Unosi novih podataka u tablice
trebaju biti omogućeni pomoću (lijepo
oblikovanih) obrazaca. Osmislite i u bazu
uključite najmanje dva upita izdvajanja i
najmanje jedan upit s izračunatim poljima. Za sve
upite priredite i prikladne izvještaje za ispis.