39
1 Definicioni dhe kuptimet themelore të bazes së të dhënave Entiteti, vetitë Modeli relacional i bazes së të dhënave Programet për menaxhim me bazen e të dhënave Lidhjet në mes entiteteve Modelimi i të dhënave

Baza e të dhënave mod

Embed Size (px)

DESCRIPTION

Bazat e të Dhënave, definicione dhe shembuj

Citation preview

Page 1: Baza e të dhënave mod

1

Definicioni dhe kuptimet themelore të bazes sëtë dhënave

Entiteti, vetitë

Modeli relacional i bazes së të dhënave

Programet për menaxhim me bazen e tëdhënave

Lidhjet në mes entiteteve

Modelimi i të dhënave

Page 2: Baza e të dhënave mod

Baza e të Dhënave është një përmbledhje e organizuar e të dhënave.

Dallojmë bazën e të Dhënave ngaprogramet për menaxhim me bazen e tëdhënave!

Programi për menaxhim me bazen e tëdhënave(Database Management System, DBMS) nënkupton që të dhënat janë ruajturnë një mënyrë të organizuar, në atë formëqë programi tì qaset lehtë.

2

Page 3: Baza e të dhënave mod

Modeli relacional– të dhënat janë të vendosuranë tabela, të cilat janë të lidhura mes veti. Përne modeli më i rëndësishëm.

Modeli hijerarhik

Modeli rrjetë

Modeli objekt

3

Page 4: Baza e të dhënave mod

Modeli i të dhënave është një pasqyrim i:

Gjësendeve (objektet, ngjarjet) të rëndësishme përpërshkrimin e proqeseve të punës

Se si janë sendet e lidhura

Modeli i të dhënave krijohet dhe ndryshon, përderisa nuk i paraqet proqeset e punës mjaftmirë sa që sipas atij modeli të mund tëndërtohet baza e të dhënave.

4

Page 5: Baza e të dhënave mod

Të dhënat janë të organizuara në tabela.

Çdo tabelë paraqet ( më së shpeshti) ndonjëobjekt (produkt, firmë, të punësuar) ose ngjarje(transakcion, faturë).

Objekti/ngjarja e cila është paraqitur në tabelëquhet entitet.

Entiteti ka vecoritë e tij (atributet).

Çdo veti duhet me qenë e një tipi të të dhënave.

Objekti përshkruan ndonjë ndodhi, send, person.

Ngjarja në princip përshkruan lidhjen në mes dyapo më shumë entiteteve (kryesisht objekteve).

5

Page 6: Baza e të dhënave mod

Për këto entitete përcaktoni llojin(objekt/ngjarje)

6

Nxënësi

Paraqitja e provimit

Lënda

Profesori

Shkola

Page 7: Baza e të dhënave mod

Text – varg i cfarëdo simboleve, gjatësie deri 255 shenja. Memo – njëjtë si Text, por gjatësia deri 65535 simbole. Number – paraqitja e vlerave numerike të duhura për

llogaritje të ndryshme. Për arsye të paraqitjes së numravenë kompjuter, nganjëherë nevojiten rregullime shtesë.

Date/Time – shërben për të treguar kohen dhe daten Currency – shërben për llogaritje dhe paraqitjen e vlerave

monetare. Vlerat monetare mund të llogariten saktësishtderi në 4 decimale pas presjes dhjetore.

AutoNumber – Accessi vet gjeneron vlerat në fushen e këtij tipi dhe kështu siguron që këto vlera mos tëpërsëriten. Një tip ideal për fushen e cila paraqet qelësinprimar.

Yes/No – dy vlera, Po ose Jo (0 ose 1) OLE object – objekt binar, të cilin e fusim në bazen tonë.

Mundet me qenë Office dokument, foto ose dicka tjetër. Hyperlink – lidhje me një dokument tjetër nga disku apo

interneti.

7

Page 8: Baza e të dhënave mod

Në shembullin e parë është përmendurentiteti Nxënës. Theksoni disa veti të atijentiteti dhe përcaktoni tipin e të dhënave!

8

• Emri i nxënësit(T)

• Data e lindjes(D/T)

• Numri amëz(T)

• JMBG (T)

• OIB (T)

• Emri i prindit(T)

• Adresa (T)

• Nr telefonit (T)

• Shkolla që vijon(T)

Page 9: Baza e të dhënave mod

Duam të krijojmë bazen e të dhënave në tëcilën mes entiteteve tjera do të ndodhet edheentiteti Qyteti, i cili do të përmban të dhënatpër qytetet në Europë. Emroni disa veti tëkëtij entiteti dhe përcaktoni tipin e tëdhënave!

9

• Emri (T)

• Nr i banorëve(N)

• Shteti (T)

• Nr i veturave (N)

• Qytet liman (Y/N)

• Llogaritja (C)

• Krahina/regjioni (T)

• Nr i urave (N)

• etj.

Page 10: Baza e të dhënave mod

Duam të ndërtojmë bazen e të dhënave në tëcilën mes entiteteve tjera do të ndodhet edheentiteti Fatura, i cili do të përmban të dhënatmbi faturat, të cilat një firmë i lëshon. Supozojmë që fatura lëshohet vetëm për njëlloj shërbimi!

10

• Emri i mallit(T)

• Emri i blerësit (T)

• Sasia (N)

• Qmimi për njësi(C)

• Qmimi total (C)

• TVSH (C)

• Nr i Fatures(T ili N)

• Data e lëshimit fatures (D/T)

• Kush e emiton faturen(personi) (T)

• Mënyra e pageses (T)

• Fatura e paguar (Y/N)

Page 11: Baza e të dhënave mod

Në një rresht të tabeles mbajmë të gjitha tëdhënat për realizimin konkret të një instance tëentitetit.

Shtylla në tabelë përmban të dhënat e ndonjëvetie për të gjitha entitetet.

Rradhen e tabeles e quajmë rresht(record).

Shtyllen e tabeles e quajmë fushë (field)

Në mes të fushave duhet të egzistoj një fushë e cila në mënyrë unike përcakton rreshtin. Këtëfushë e quajmë Qelësi primar.

11

Page 12: Baza e të dhënave mod

Rreshti i cili përshkruanqytetin“Zagreb”

12

Shtylla në cilen janëcekur emrat e qyteteve (fusha Emri)

Sa instanca të entitetit Qytet janë paraqitur nëtabelë?

Emri Nr

banorëve

Shteti Regjioni Qytet

Liman

Llogaritja

Barcelona

2500000

Spanja Katalonija Po 4.000.000.000 €

Milano

3000000

Italija Lombardija Jo 5.000.000.000 €

Zagreb

1000000

Kroacia Qyteti

Zagreb

Jo 2.500.000.000 €

Page 13: Baza e të dhënave mod

Në mes entiteteve mund të ketë tre llojlidhjesh Lidhja 1:1 (një me një)

Lidhja 1:N (një me shumë, shkruhet edhe 1:∞)

Lidhja M:N (shumë me shumë, shkruhet edhe∞:∞)

Mvarësisht nga tipi i lidhjes, lidhjen erealizojmë Ose me futjen (integrimin) e entitetit në entitetin

tjetër

Ose me vendosjen e qelësit primar të një entiteti nëvecoritë e entitetit tjetër

Ose me krijimin e një tabele të re (entitet)13

Page 14: Baza e të dhënave mod

Të krijohen entitet Qytet dhe Adresë dhe tëlidhen mes veti!

Page 15: Baza e të dhënave mod

Vështrojmë entitetet për të cilat dijmë se janë të lidhura (në boten reale). Do tiquajmë A dhe B.

Pyesim, me sa rreshta nga B mund tëlidhim ndonjë rresht nga A. Përgjegje është1 ose më shumë.

Pyesim, me sa rreshta nga A mund tëlidhim ndonjë rresht nga B. Përgjegje ështëpërsëri 1 ose më shumë.

I lidhim përgjigjet dhe fitojmë lidhjen.

15

Page 16: Baza e të dhënave mod

Janë dhënë entitetet Studenti, Kolegji, Profesori, Studimet

Përcaktoni lidhjet në mes atyre entiteteve mestë cilave egziston lidhja direkte!

16

Nxënësi - Lënda

Nxënësi - Profesori

Nxënësi - Shkola

Lënda - Profesori

Lënda - Shkola

Profesori - Shkola

shumë-shumë

një - shumë

shumë-shumë

shumë-shumë

shumë-shumë

nuk egziston

Page 17: Baza e të dhënave mod

Janë dhënë entitetet

Shtet – shtetet në Europë

Qytet – të gjitha qytetet me mbi 100000 banorë nëEuropë

Kryeqyteti – kryeqytetet e shteteve evropiane

Gjuha – të gjitha gjuhët zyrtare në shtetet evropiane

Përcaktoni lidhjen në mes entiteteve.

17

Page 18: Baza e të dhënave mod

Në mes entiteteve Gjuha dhe Qyteti, dhe Gjuha dheKryeqyteti nuk egziston lidhje direkte por ajo realizohetpërmes Shtetit!

18

Shteti - Qyteti

Shteti - Kryeqyteti

Shteti - Gjuha

Qyteti - Gjuha

Qyteti - Kryeqyteti

Kryeqyteti - Gjuha

shumë-shumë

një-shumë

një-një

nuk egziston

nuk egziston

nuk egziston

Page 19: Baza e të dhënave mod

Në mes Shteti dhe Kryeqyteti

Shteti ka saktësisht një kryeqytet, kursekryeqyteti i përket saktësisht një shteti.

Realizimi i lidhjes: të tri mënyrat janë tëmundshme, mvaret nga situta konkrete në bazë

Do të paraqesim realizimin me integrim.

19

Page 20: Baza e të dhënave mod

Shteti

Emri shtetit

Banorë

Madhësia

Rendi shoqëror

20

Kryeqyteti

– Emri qytetit

– Nr. banorëve

Shteti

– Emri shtetit

– Banorë

– Madhësia

– Rendi shoqëror

– Emri qytetit

– Nr. banorëve

Realizimi i lidhjes me integrimin e

Kryeqytetit në Shtet (bën edhe

anasjelltas)

Page 21: Baza e të dhënave mod

Në mes entiteteve Shteti dhe Qyteti

Shteti ka më shumë qytete, kurse qyteti i përketsaktësisht një shteti.

Realizimi i lidhjes: ose me vendosjen e qelësitprimar ose me tabelë të re

Vendosja e Qelësit primar: kemi entitetet A dhe B. Një rreshti të entitetit A mund tipërgjigjen më shumë rekorde të entitetit B, kurse një rekordi të entitetit B i përgjigjetsaktësisht një rekord i entitetit A. Atëherë nëmes vetive të entitetit B fusim qelësin primar tëentitetit A!

21

Page 22: Baza e të dhënave mod

Shteti

Emri shtetit

Banorët

Madhësia

Rendi shoqëror

22

Qyteti

– Emri qytetit

– Nr banorëve

Qyteti

– Emri qytetit

– Nr banorëve

– Emri shtetit

Të vendoset qelësi primar i

entitetit Shteti

Entiteti Shteti nuk ndryshon

Page 23: Baza e të dhënave mod

Në mes entiteteve Shteti dhe Gjuha

Në një shtet mund të fliten shumë gjuhë, kursenjë gjuhë mund të flitet në më shumë shtete.

Realizimi i lidhjes: me tabelë të re

Tabela e re duhet të ketë qelësin e saj primar, tëpërmban qelësat primarë të Shtetit dhe Gjuhës, dhe eventualisht vecori shtesë.

23

Page 24: Baza e të dhënave mod

Shteti– Emri shtetit– Banorë– Madhësia– Rendi

shoqëror

24

Gjuha

– Emri gjuhës

– Alfabeti

Flitet

– ID

– Emri gjuhës

– Emri shtetit

– Nr banorëve

Qelësat

primar të

futur për

entitetet

Gjuha

dhe

Shteti

Shteti dhe Gjuha nuk ndryshojnë

Qelësi primar I tabeles së re

Veti shtesë

Page 25: Baza e të dhënave mod

Tabelat duhet të kenë kuptim Çdo rresht do duhej të paraqes një paraqitje të

entitetit

Një tabelë nuk do duhej të përmban të dhënat e disaentiteteve Evitohet përsëritja e të dhënave

Lehtësohen ndryshimet

Shtyllat e ndryshme për të dhëna të cilaveduhet tì qasemi pamvarësisht. Nëse duhet ti qaseni vetëm një pjese të të dhënave në

ndonjë shtyllë, ndani shtyllen!

25

Page 26: Baza e të dhënave mod

Cdo qelizë përmban saktësisht një vlerë

Në shembullin e kaluar nuk do ishte mirë që nëentitetin Shteti të kemi veqorin Gjuha e cila ka vleratitalisht, frengjisht.

Çdo tabelë duhet të ketë qelësin primar

Të evitohet përsëritja e panevojshme e tëdhënave.

26

Page 27: Baza e të dhënave mod

Në tabelë kemi të dhëna për dy entitete, Punëtori dheReparti, tabela duhet të ndahet në dy sosh.

Cila është lidhja në mes Punëtori dhe Reparti?

27

Më shumë të dhëna në një qelizë

Të ndahet qyteti nga adresa

• Cili është Qelësi primar për Punëtori?

• Duhet të shtohet fusha e re: ID oseJMBG

Punëtori Dt. punësimit Numri telefonit Reparti Adresa e repartit

Marko Maric 15.5.2000 091-234156 Akustika Sisak,Zagrebacka 7

Petar Peric 1.4.1997 091-289414 Akustika Sisak,Zagrebacka 7

Zdravko Zoric 15.1.2001 098-323213 Optika Zagreb,Gregorceva 11

Marija Mimic 15.5.1999 098-323498,091-232214 Optika Zagreb,Gregorceva 11

Page 28: Baza e të dhënave mod

E metë: Mjaft hapësirë e zbrazët në tabelenPunëtori

28

Id

Punëtori

Punëtori Dt. punësimit Nr. Telefonit 1 Nr. Telefonit 2 Id Reparti

1 Marko Maric 15.5.2000 091-234156 1

2 Petar Peric 1.4.1997 091-289414 1

3 Zdravko

Zoric

15.1.2001 098-323213 2

4 Marija Mimic 15.5.1999 098-323498 091-2324214 2

Id reparti Emri repartit Qyteti Adresa

1 Akustika Sisak Zagrebacka 7

2 Optika Zagreb Gregorceva 11

Page 29: Baza e të dhënave mod

29

Id Punëtori Punëtori Data e punësimit ID

reparti

1 Marko Maric 15.5.2000 1

2 Petar Peric 1.4.1997 1

3 Zdravko Zoric 15.1.2001 2

4 Marija Mimic 15.5.1999 2

Id Id

Punëtori

Nr telefonit

1 1 091-234156

2 2 091-289414

3 3 098-323213

4 4 098-323498

5 4 091-2324214

Id

reparti

Emri

repartit

Qyteti Adresa

1 Akustika Sisak Zagrebacka 7

2 Optika Zagreb Gregorceva11

Page 30: Baza e të dhënave mod

Gjatë dizajnimit të modelit të të dhënave duhettë kemi parasysh:

◦ Cilat entitete nevojiten për funkcionim të bazës

◦ Cilat pyetje dëshirojmë ti shtrojmë në bazë

◦ Çfarë raporte dëshirojmë të kemi nga baza

◦ Çfarë janë lidhjet në mes entiteteve

◦ Cilat janë vetitë e secilit entitet

◦ A ka nevojë që disa veti të entitetit të ndahen në tabelëtë re?

30

Page 31: Baza e të dhënave mod

Cilët janë entitetet?

A egzistojnë lidhjet mes tyre?

Çfarë është natyra e lidhjes?

A ka kushte shtesë?

Çfarë tabelash na duhen për prezentimin e entiteteve?

Çfarë është qelësi primar i secilës tabelë?

Cilat janë fushat tjera në tabelë?

Cilat fusha/tabela na duhen për paraqitjen e lidhjes?

A kemi harruar dicka??? 31

Page 32: Baza e të dhënave mod

Duam të ndërtojmë një model të të dhënave përvideotekë. Duhet të përcjellen të dhënat përanëtarët , filmat dhe porositë që anëtarët ibëjnë. Për arsye të thjeshtësisë supozojmë seanëtarët huazojnë një film. Poashtu, duhetditur cili punëtorë e ka dhënë filmin. Për filminduhet ditur cilit zhanër i përket për ti renditurnë rafte, dhe a është kthyer apo jo. Supozojmëqë saktësisht kemi vetëm një kopje të filmit.

Ndërtoni modelin!

32

Page 33: Baza e të dhënave mod

Anëtari – të dhënat për anëtarët

Filmi – të dhënat për filmat

Huazimi – të dhënat për huazimet

Punëtori – të dhënat për nënpunësit

33

Anëtari - Huazimi 1 - ∞

Filmi - Huazimi 1 - ∞

Punëtori - Huazimi 1 - ∞

Lidhjet

Entitetet

Page 34: Baza e të dhënave mod

Anëtari Shifra

anëtarit(T) Emri e

mbiemri(T) Adresa (T) Nr telefonit(T) Vërejtje (M)

34

Filmi

Shifra

filmit(AN)

Emri filmit(T)

Zhanri (T)

Huazimi

Shifra huazimit(AN)

Shifra anëtarit(T)

Shifra filmit(N)

Id punëtorit (N)

Data (D/T)

Çmimi (C)

Filmi kthyer(Y/N)Punëtori

Id punëtorit (AN)

Emri e

mbiemri(T)

Adresa (T)

Nr telefonit(T)

Vërejtje (M)

Në tabela të ndryshme lidhim fushat të cilat kanë

kuptim të njëjtë.

Ato fusha duhet të jenë të tipit të njëjtë.

Përjashtim është fusha e tipit Autonumber e cila

lidhet me fushen e tipit Number në tabelen e

dytë!

Page 35: Baza e të dhënave mod

Dëshirojmë të ju mundësojmë anëtarëve tëvideotekes që të mund ta kenë listen e filmaveku luan aktori i tyre i preferuar. Çfarëndryshimesh (shtimi i entiteteve të reja, shtim ivetive të reja entiteteve egzistuese) duhet bërë?

35

Page 36: Baza e të dhënave mod

Anëtari Shifra

anëtarit(T)

Emri e mbiemri(T)

Adresa (T)

Nr telefonit(T)

Vërejtje (M)

36

Filmi

Shifra filmit(AN)

Emri filmit(T)

Zhanri (T)

Huazimi

Shifra huazimit(AN)

Shifra anëtarit(T)

Shifra filmit(N)

Id punëtorit (N)

Data (D/T)

Çmimi (C)

Filmi i kthyer(Y/N)

Punëtori

Id punëtorit (AN)

Emri e

mbiemri(T)

Adresa (T)

Nr telefonit(T)

Vërejtje (M)

Artisti

Id artistit (AN)

Emri e

mbiemri(T)

Viti lindjes. (N)

Shpërblimet (M)

Aktori Filmi

Id (AN)

Shifra filmit (N)

Id artistit (N)

Page 37: Baza e të dhënave mod

Modeli paraprak është krijuar sipas supozimitse anëtari do të huazon vetëm një film.

Por, në praktikë anëtarët mund të huazojnë mëshumë filma.Përmirsoni modelin i cili do të mundëson edheatë rast!

37

Page 38: Baza e të dhënave mod

Tabelat Anëtari, Punëtori, Aktori, AktorëFilm,mbesin të njëjta sikur te modeli paraprak

38

Filmi

Shifra filmit (AN)

Emri filmit(T)

Genre (T)

Huazimi

Shifra huazimit(AN)

Shifra anëtarit(T)

Id punëtorit (N)

Data (D/T)

Çmimi (C)

Artikulli

Id artikulli (AN)

Shifra filmit(N)

Shifra huazimit(N)

Filmi kthyer (Y/N)

Page 39: Baza e të dhënave mod

Anëtari

Shifra anëtarit

Emri mbiemri

Adresa

Nr telefonit

Vërejtje

Predavanje 01 - Baze podataka 39

Artikulli

Id Artikulli

Shifra huazimi

Shifra filmit

Filmi i kthyer

Filmi

Shifra filmit

Emri filmit

Zhanri

Huazimi

Shifra huazimit

Shifra anëtarit

Id punëtorit

Data

Çmimi

Punëtori

Id djepunëtorit

Emri mbiemri

Adresa

Nr telefonit

Vërejtje

Aktori

Id aktori

Emri&mbiemri

Viti lindjes

Shpërblimet

AktorëFilm

Id

Shifra filmit

Id aktorit