BD Wyklad 1 2011

background image

Bazy Danych

Wykład 1

S. Kozielski

background image

Program wykładu

1.

Wprowadzenie

2.

Modele danych – model relacyjny

3.

J

ę

zyk SQL

a)

Definiowanie struktury danych

b)

Operacje na bazie danych

4.

Ochrona baz danych

a)

Bezpiecze

ń

stwo baz danych – kontrola dost

ę

pu

b)

Ochrona integralno

ś

ci semantycznej – wi

ę

zy referencyjne

c)

Ochrona integralno

ś

ci transakcyjnej – zarz

ą

dzanie transakcjami

5.

Projektowanie baz danych

a)

Modelowanie zwi

ą

zków encji

b)

Normalizacja struktury baz danych

6.

Architektura systemów korzystaj

ą

cych z baz danych

background image

Literatura

1.

C.J. Date – Wprowadzenie do systemów baz danych, WNT 2000

2.

J.D. Ullman, J. Widom – Podstawowy wykład z systemów baz danych,

WNT 2000

3.

H.Garcia-Molina, J.D. Ullman, J. Widom – Implementacja systemów baz

danych, WNT 2003

4.

H.Garcia-Molina, J.D. Ullman, J. Widom – Systemy baz danych. Pełny

wykład, WNT 2006

5.

R. Elmasri, S. Navathe – Wprowadzenie do systemów baz danych,

Addison-Wesley, Helion 2005.

6.

R. Coburn – SQL dla ka

ż

dego, Helion 2005

background image

Poj

ę

cia podstawowe

Baza danych – zbiór danych pami

ę

tanych w systemie

komputerowym, dotycz

ą

cych pewnej wyodr

ę

bnionej cało

ś

ci,

wzajemnie powi

ą

zanych i wykorzystywanych przez wielu

u

ż

ytkowników.

System Zarz

ą

dzania Baz

ą

Danych (SZBD, ang. DBMS)

uniwersalny system programowy, umo

ż

liwiaj

ą

cy tworzenie,

obsług

ę

i ochron

ę

baz danych w ró

ż

nych zastosowaniach.

background image

Funkcje, struktura i u

ż

ytkownicy SZBD

U

ż

ytkownicy

uprawnienia

- tworzenie b.d.,
- strojenie b.d.,
- archiwizowanie b.d.,
- definiowanie u

ż

ytkowników i ich

uprawnie

ń

- wprowadzanie danych,
- modyfikowanie danych,
- usuwanie danych,
- wyszukiwanie danych,
- przetwarzanie danych,
- wizualizacja i raportowanie

- wyszukiwanie danych,
- przetwarzanie danych

Administrator b.d.

Programi

ś

ci aplikacji

U

ż

ytkownicy okazjonalni

Procesor zapyta

ń

1) kontrola dost

ę

pu, 2) optymalizacja zapyta

ń

, 3) wykonanie zapyta

ń

, 4) ochrona integralno

ś

ci

Moduł zarz

ą

dzania pami

ę

ci

ą

- zarz

ą

dzanie plikami,

- zarz

ą

dzanie buforami

Moduł zarz

ą

dzania transakcjami

- sterowanie współbie

ż

nym dost

ę

pem do danych,

- odtwarzanie spójnego stanu bazy

dziennik

transakcji

metadane

(słownik

b.d

.)

baza

danych

background image

Wymagania stawiane systemowi z baz

ą

danych

• Poprawne odzwierciedlenie w bazie danych zale

ż

no

ś

ci

w

ś

wiecie rzeczywistym, który ta baza reprezentuje

• Efektywne przetwarzanie danych

• Zapewnienie spójno

ś

ci danych

• Ochrona przed nieautoryzowanym dost

ę

pem

• Ochrona przed skutkami zdarze

ń

losowych (awarii)

• Zapewnienie współbie

ż

nego dost

ę

pu do danych wielu

u

ż

ytkownikom

• Udost

ę

pnienie metadanych

background image

Architektura systemów z baz

ą

danych

background image

Architektura jednowarstwowa 1

Komputer

U

ż

ytkownik

SZBD

BD

Administrator

bazy danych

background image

Architektura jednowarstwowa 2

Aplikacja

SZBD

BD

Komputer

background image

Architektura dwuwarstwowa: systemy klient-serwer

Serwer

SZBD

Aplikacja 1

BD

Aplikacja 2

Aplikacja 3

stacja 1

stacja 2

stacja 3

background image

Architektura trójwarstwowa

SZBD

Klient

Klient

Klient

Stacja 1

Stacja 2

Stacja n

BD

Serwer bazy danych

Serwer aplikacji

background image

Wielowarstwowe internetowe systemy bazodanowe

Przegl

ą

darka

(klient)

BD

Serwer

b. d.

Serwer
www

Serwer
aplikacji

Przegl

ą

darka

(klient)

Przegl

ą

darka

(klient)

background image

Poziomy opisu danych w b.d.

Model danych:

- struktury danych,
- operacje na strukturach

-

ograniczenia dla danych

poziom

poj

ę

ciowy

poziom

zewn

ę

trzny

poziom

wewn

ę

trzny

U

1

U

2

U

3

U

5

U

6

podschemat A

(perspektywa A)

podschemat C

(perspektywa C)

podschemat B

(perspektywa B)

U

4

Schemat b.d.

(globalny logiczny opis b.d.)

fizyczne struktury danych

background image

Opis wybranego fragmentu rzeczywisto

ś

ci

nazwisko

adres

kwota

kierownik

Pracownik

kierownik

nazwa

nrt

Temat

nale

ż

y

Zespół

nazwa

wykonuje

N

1

M

N

background image

• Rekord – zestaw danych tworz

ą

cych pewn

ą

cało

ść

,

• Pole – miejsce danych w rekordzie,

• Typ danej – sposób reprezentacji danej w polu,

• Typ rekordu – zestaw typów danych tworz

ą

cych

rekord,

• Wyst

ą

pienie rekordu – zestaw warto

ś

ci danych

tworz

ą

cych rekord.

background image

Model hierarchiczny - schemat b. d

.

nazwa

kierownik

Zespół

nazwisko

adres

Pracownik

nrt

nazwa

kierownik

kwota

Zadanie

background image

Model hierarchiczny – wyst

ą

pienia rekordów

Zespół Wdro

ż

e

ń

Jaworski

P1

Z1

Z2

P3

P2

P4

P5

T2

200

T2

300

T3

200

T1

150

T3

150

T2

200

T3

150

background image

Przykładowe pytania

Z1: nazwisko

nazwa tematu

Które tematy (nazwa) wykonuje zadany pracownik?

Z2: nazwa tematu

nazwisko

Kto (nazwisko) wykonuje zadany temat?

background image

J

ę

zyk DL/I

get leftmost <rekord> [where <warunek>]

get next <rekord> [where <warunek>]

get next within parent <rekord> [where <warunek>]

background image

Model sieciowy - schemat b. d

.

nazwa

kierownik

Zespół

nazwisko

adres

Pracownik

nrt

nazwa

kierownik

kwota

Temat

Wypłata

background image

Model sieciowy – wyst

ą

pienia rekordów

150

150

200

300

200

P1

P2

P3

Z1

T2

T1

T3

B

B

B

A

C

C

C

background image

J

ę

zyk DML

find <rekord> record by key <zmienna>

find next <rekord> record in current <kolekcja> set

find owner of current <kolekcja> set

background image

Model relacyjny - schemat b. d

.

nazwisko

adres

Pracownik

nrt

nazwa

kierownik

Temat

nazwa

kierownik

Zespół

nrz

nrp

kwota

Wypłata

nrt

nrp

nrz

background image

Zespoły

1

Zespół Wdro

ż

e

ń

2

2

Zespół Analiz

1

kierownik

nazwa

nrz

background image

Pracownicy

1

Gliwice

Jaworek

3

1

Zabrze

Grabski

2

2

Ruda

Ś

l

ą

ska

Lipowski

1

nrz

adres

nazwisko

nrp

background image

Tematy

2

Projekt reaktora

3

1

Projekt przetwornika

2

2

Projekt zasilacza

1

kierownik

nazwa

nrt

background image

Wypłaty

200

3

1

200

2

3

150

1

1

150

3

3

300

2

2

kwota

nrt

nrp

background image

Poziomy j

ę

zyków zapyta

ń

modelu relacyjnego

1. J

ę

zyki operuj

ą

ce na pojedynczych rekordach (wierszach

tablicy)

2. J

ę

zyki operuj

ą

ce na całych tablicach (algebra relacji)

3. Wysokiego poziomu j

ę

zyki zapyta

ń

(SQL, Quel, QBE)

background image

J

ę

zyki operuj

ą

ce na pojedynczych rekordach

(wierszach tablicy)

get next record from <tablica>

background image

J

ę

zyki operuj

ą

ce na całych tablicach

(algebra relacji)

(uj

ę

cie pogl

ą

dowe – uproszczone)

background image

Przykład selekcji

A

B

C

2

1

2

σ

C=2

A

B

C

2

2

background image

Przykład projekcji

A

B

C

A

C

π

AC

background image

Przykład zł

ą

czenia naturalnego

r (A, B, C)

s (C, D)

————  ———

=

?

a

1

b

1

c

1

c

1

d

1

a

2

b

2

c

2

c

5

d

5

a

3

b

3

c

3

a

4

b

4

c

1

background image

Przykład zł

ą

czenia naturalnego

r (A, B, C)

s (C, D)

z (A, B, C, D)

————  ———

=

—————

a

1

b

1

c

1

c

1

d

1

a

1

b

1

c

1

d

1

a

2

b

2

c

2

c

5

d

5

a

4

b

4

c

1

d

1

a

3

b

3

c

3

a

4

b

4

c

1

background image

ą

czenie tabel

Wypłaty

nrp

nrt

kwota

2

2

300

3

3

150

1

1

150

3

2

200

1

3

200

Pracownicy

nrp

nazwisko

adres

nrz

1

Lipowski

Ruda

2

2

Grabski

Zabrze

1

3

Jaworek

Gliwice

1

background image

Pracownicy



Wypłaty

200

3

2

Ruda

Lipowski

1

200

2

1

Gliwice

Jaworek

3

150

1

2

Ruda

Lipowski

1

150

3

1

Gliwice

Jaworek

3

300

2

1

Zabrze

Grabski

2

kwota

nrt

nrz

adres

nazwisko

nrp

background image

Pracownicy



Wypłaty



Tematy

2

Pr. reaktora

200

3

2

Ruda

Lipowski

1

1

Pr. przetwor.

200

2

1

Gliwice

Jaworek

3

2

Pr. zasilacza

150

1

2

Ruda

Lipowski

1

2

Pr. reaktora

150

3

1

Gliwice

Jaworek

3

1

Pr. przetwor.

300

2

1

Zabrze

Grabski

2

kier.

nazwa

kwota

nrt

nrz

adres

nazwisko

nrp

background image

σ

nazwisko = ‘Jaworek’

(

Pracownicy



Wypłaty



Tematy

)

1

Pr. przetwor.

200

2

1

Gliwice

Jaworek

3

2

Pr. reaktora

150

3

1

Gliwice

Jaworek

3

kier.

nazwa

kwota

nrt

nrz

adres

nazwisko

nrp

background image

π

nazwa

(

σ

nazwisko = ‘Jaworek’

(

Pracownicy



Wyp

ł

aty



Tematy

))

Pr. przetwor.

Pr. reaktora

nazwa

background image

Pytanie Z1 jako wyra

ż

enie algebry relacji

Z1 =

π

nazwa

(

σ

nazwisko = ‘Jaworek’

(Pracownicy



Wyp

ł

aty



Tematy))

background image

Pytanie Z2 jako wyra

ż

enie algebry relacji

Z2 =

π

nazwisko

(

σ

nazwa = ‘Pr. reaktora’

(Pracownicy



Wyp

ł

aty



Tematy))

background image

SQL - wysokiego poziomu j

ę

zyk zapyta

ń

Posta

ć

pytania Z1:

SELECT nazwa

FROM pracownicy, wypłaty, tematy

WHERE pracownicy.nrp = wypłaty.nrp AND

wypłaty.nrt = tematy.nrt AND

nazwisko = ‘Jaworek’

background image

Posta

ć

pytania Z2:

SELECT nazwisko

FROM pracownicy, wypłaty, tematy

WHERE pracownicy.nrp = wypłaty.nrp AND

wypłaty.nrt = tematy.nrt AND

nazwa = ‘Pr. reaktora’


Wyszukiwarka

Podobne podstrony:
BD Wykład 3 2011
BD Wykład 4 2011
BD Wykład 8 2011
BD Wykład 5 2011
BD Wykład 7 2011
BD Wykład 6 2011
BD Wykład 2 2011
BD Wykład 3 2011
BD Wykład 4 2011
perswazja wykład2 2011 Zasady skutecznej perswazji Petty & Cacioppo

więcej podobnych podstron