58
Teknologji Informative 1

Ligjerata 7

Embed Size (px)

Citation preview

Page 1: Ligjerata 7

Teknologji Informative

1

Page 2: Ligjerata 7

2

7.1 Karakteristikat e Databazës (Bazës së të dhënave) Të dhënat ruhen në tabela, të cilat kanë rreshta dhe

kolona. Databaza mund të ketë shumë tabela, ku çdo tabelë ruan të dhëna për gjëra të ndryshme

Çdo rresht në tabelë përmban të dhëna për ndodhi ose instanca të gjërave në interes

Databaza përmban të dhëna dhe relacione

Page 3: Ligjerata 7

3

Të dhënat në tabela

Page 4: Ligjerata 7

4

Relacionet ndërmjet tabelave

Page 5: Ligjerata 7

5

Disa konventa

Emrat e Tabelave janë të shënuara me shkronja të mëdha:

STUDENT, CLASS, GRADE Emrat e kolonave janë të shënuara me një shkrronjë të

madhe në fillim, dhe emrat e përbëra shënohen me shkronja të mësha në fillim të çdo fjale:

Term, Section, ClassNumber, StudentName

Page 6: Ligjerata 7

6

Databaza krijon informacion

Të dhëna = Fakte dhe ndodhi të regjistruara/verifikuara Informacioni = Njohuri të nxjerra nga të dhënat Databaza përmban të dhëna, por në atë mënyrë që mund të

nxjerrim informata nga të dhënat Të dhënat në tabelat STUDENT, CLASS and GRADE

mund të prodhojnë informacione për secilin student

Page 7: Ligjerata 7

7

Shembuj të databazave

Page 8: Ligjerata 7

8

Komponentat e Sistemit të Databazës: Microsoft Access

Page 9: Ligjerata 7

9

MS Access në detaje

Page 10: Ligjerata 7

10

Aplikacionet, DBMS dhe SQL

Aplikacionet janë programe kompjuterike me anë të cilave punojnë përdoruesit

Sistemi për Menaxhim të Databazës - Database Management System (DBMS) krijon, proceson dhe administron databazën

Structured Query Language (SQL) është një gjuhë standarde e databazave që përdoret nga të gjitha DMBS-et komerciale

Page 11: Ligjerata 7

11

Çfarë është MS Access?

MS Access është DBMS plus gjenerues aplikacionesh: DBMS krijon, proceson dhe administron MS Access

databazën Gjeneruesi i aplikacionit përfshin komponentat

pyetësore, të formave dhe raporteve DBMS makina e MS Access DBMS quhet Jet, e cila

nuk shitet si produkt i veçantë MS Access 2000 dhe më vonë mund të përdoren si gjenerues

aplikacionesh për MS SQL Server DBMS

Page 12: Ligjerata 7

12

Sistemet e Databazave të klasit Enterprise

Page 13: Ligjerata 7

13

DBMS Produkte më të njohura

Microsoft Access Microsoft SQL Server IBM DB2 Oracle Corporation ORACLE Sybase Informix Ingress Dhe mos e anashkaloni MySQL

Page 14: Ligjerata 7

14

Databaza

Databaza është koleksion vetë-përshkrues me tabela të integruara

Tabelat quhet të integruara sepse ato përmbajnë të dhëna për relacionet ndërmjet rreshtave me të dhëna

Databaza quhet vetë-përshkruese pasiqë përmban përshkrim të vetvehtes

Të dhënat vetë-përshkruese quhen metadata, që janë të dhëna për të dhënat

Page 15: Ligjerata 7

15

Metadata Tabelë tipike

Page 16: Ligjerata 7

16

Përmbajtja e Databazës

• Tabela• Metadata• Indekse• Stored procedures• Triggers• Të dhëna sigurie• Të dhëna për Backup

Page 17: Ligjerata 7

17

Tre tipe të dizajnit të Databazës

1. Nga të dhënat ekzistuese Analizimi i tabelave dhe tekst fajlleve të ndryshme Nxjerrja e të dhënave nga databaza ekzistuese Dizajni me anë të normalizimit2. Zhvillimi i ri i Sistemeve- Krijohet modeli i të dhënave për nevojat e aplikacionit- Transformimi i modelit të të dhënave në dizajn të databazës3. Ridizajnimi i Databazës- Migrimi i databazës në databazë të re- Integrimi i dy apo më shumë databazave

Page 18: Ligjerata 7

18

Dizajnimi i databazës nga të dhënat ekzistuese

Page 19: Ligjerata 7

19

Importimi i të dhënave: Një apo dy Tabela?

Kjo është një vendim-marrje e rëndësishme, bazohet në rregullat e normalizimit

Page 20: Ligjerata 7

20

Dizajnimi i Databazës duke zhvilluar sistem/aplikacion

Page 21: Ligjerata 7

21

Dizajnimi i Databazës me anë të ridizajnimit të databazës ekzistuese

Page 22: Ligjerata 7

22

Structured Query Language - SQL

Structured Query Language (SQL) u zhvillua nga IBM në fund të viteve 1970.

SQL është bërë standard nacionnal në SHBA nga American National Standards Institute (ANSI) në 1992 [SQL-92].

Verzioni më i ri [SQL3] ekziston dhe inkorporon disa koncepte të orientuara në objekte, por nuk përdoret gjërësisht nga DBMS produktet komerciale.

Page 23: Ligjerata 7

23

SQL si Nëngjuhë e të dhënave

SQL nuk është gjuhë e plotë programore si C, C#, edhe Java.

SQL ëshë nëngjuhë për të dhëna për krijimin dhe procesimin e të dhënave dhe meta të dhënave (metadata) të databazës.

SQL është i gjithëpranishëm në DBMS produktet komerciale të klasave - enterprise.

Page 24: Ligjerata 7

24

SQL DDL dhe DML

SQL formulimet/pyetësorët mund të ndahen në dy kategori: Data definition language (DDL) formulime

Për krijimin e tabelave, relacioneve, dhe strukturave tjera.

Data manipulation language (DML) formulimet. Për pyetësor dhe modifikim të të dhënave

Page 25: Ligjerata 7

25

Gjuhët e databazave

Gjuha për definimin e të dhënave - Data Definition Language (DDL)

I mundëson DBA ose përdoruesit të përshkruaj dhe emërojë entietete, atribute dhe relacione të nevojshme për aplikacionin.

CREATE, ALTER, DROP.

Page 26: Ligjerata 7

26

Gjuhët e databazave

Gjuha për Manipulimin e të dhënave- Data Manipulation Language (DML)

Ofrom operacione për manipulim bazik të të dhënave në databazë.

DML procedurale- iu mundëson përdoruesve saktësisht se si ti manipulojnë të dhënat.

DML jo procedurale- iu mundëson përdoruesve në çfarë gjendje nevojiten të dhënat dhe jo në çmënyrë duhet të nxirren nga baza.

INSERT, UPDETE, DELETE.

Page 27: Ligjerata 7

27

Funksionet e DBMS

Ruajtja, nxjerrja dhe përditësimi i të dhënave.

Duhet tju mundësoj përdoruesve të ruajnë nxjerrin dhe ti përditësojnë/ndryshojnë të dhënat në databazë.

Katalog për qasje nga përdoruesi.

Duhet të mundësoj katalogimin e të dhënave ku përshkrimet e elementëve të të dhënave do të ruhen dhe që janë të qasshme nga ana e përdoruesit.

Page 28: Ligjerata 7

28

Funksionet e DBMS

Mbështetje e transakcioneve Duhet të shërbejë si mekanizëm që ose të gjitha

përditësimet që korespondojnë me një transakcion të dhënë janë kryer ose asnjë prej tyre nuk është kryer.

Shërbime për kontrollin e konkurencës Duhet të shërbejë si mekanizëm që mundëson që

databaza është përditësuar korrektësisht atëherë kur përdorues të shumëfishtë e përditësojnë databazën në mënyrë konkurente.

Page 29: Ligjerata 7

29

Funksionet e DBMS

Shërbimet e rigjenerimit (recovery services) Duhet të shërbejë si mekanizëm për rigjenerimin e

databazës në raste kur dëmtohet databaza në mënyra të shumta.

Shërbimet e autorizimit Duhet të shërbejë si mekanizëm që do të sigurojë se

vetëm persona të autorizuar mund ti qasen databazës.

Page 30: Ligjerata 7

30

Funksionet e DBMS

Mbështetje për komunikimin e të dhënave Duhet ë jetë në gjendje të integrohet me softverët për

komunikim. Shërbimet e integritetit

Duhet të shërbejë si mekanizëm që do të mundësojë se edhe të dhënat e databazës edhe ndryshimet ndaj të dhënave të pasojnë rregulla të caktuara.

Page 31: Ligjerata 7

31

Komponentat e DBMS Procesuesi i

pyetësorëve

Menaxhuesi i databazës (DM)

Menaxhuesi i fajllave

DML preprocesuesi

DDL kompajleri

Menaxhuesi i katalogut

Page 32: Ligjerata 7

32

Modeli Relacional-Terminologjia

Kemi pranuar një apo më shumë tabela me të dhëna.

Të dhënat duhet të ruhen në databazë të re.

PYETJE: A duhet që të dhënat të ruhen ashtu si i kemi pranuar, ose duhet që të njëjtat të transformohen për tu ruajtur?

Page 33: Ligjerata 7

33

Sa tabela?

A duhet ti ruajmë këto dy tabela kështu si janë, ose duhet ti kombinojmë ato në një tabelë në databazën tonë të re?

Page 34: Ligjerata 7

34

7.2 Modeli Relacional

Futet në përdorim në 1970 Krijuar nga E.F. Codd

Ai ishte një inzhiner i IBM Modeli shfrytëzon fushën e matematikës e quajtur si

“algjebra relacionale” Tani përdoret si model standard për DBMS produktet

komerciale

Page 35: Ligjerata 7

35

Terminet e rëndësishme të Modelit Relacional

Entity - Entiteti Relation - Relacioni Functional Dependency – Varshmëria funksionale Determinant - Përcaktues Candidate Key – Çelës kandidat Composite Key – Çelës i përbërë Primary Key – Çelës primar Surrogate Key – Çelës surogat Foreign Key – Çelës i jashtëm Referential integrity constraint – Rregulla e integritetit

referencial Normal Form – Forma normale Multivalued Dependency – Varshmëria shumëvlerëshe

Page 36: Ligjerata 7

36

Entiteti - përsëritje

Entiteti është diçka që mund të identifikohet e që përdoruesit mund ta hetojnë/gjurmojnë: Klientët Kompjuterët

Page 37: Ligjerata 7

37

Relacioni

Produktet relacionale të DBMS i ruajnë të dhënat e entiteteve në relacione, të cilat janë tipe speciale të tabelave

Relacioni është tabelë dydimensionale që i posedon këto karakteristika: Rreshtat përmbajnë të dhëna për entitetin Kolonat ruajnë të dhëna për atributet e entitetit Të gjithë entitetet në kolonë janë të të njëjtit tip Secila kolonë ka emër unik Qelitë e tabelës kanë vlera të veçantë Rradhitja e kolonave është e parëndësishme Rradhitja e rreshtave është e parëndësishme Dy rreshta nuk mund të jenë identike

Page 38: Ligjerata 7

38

Një relacion

Page 39: Ligjerata 7

39

Relacion me vlera me gjatësi të ndryshme

Page 40: Ligjerata 7

40

Tabelat që nuk janë relacione:Të hyra të shumëfishta për një qeli

Page 41: Ligjerata 7

41

Tabelat që nuk janë relacione: :Tabelë me rradhitje të kërkuar të rreshtave

Page 42: Ligjerata 7

42

Terminologji Alternative

Edhe pse jo të gjitha tabelat janë relacione, terminet tabelë dhe relacion përdoret në mënyrë të këmbyeshmeKëto termine janë ekuivalente:

Page 43: Ligjerata 7

43

Varshmëria funksionale

Varshmëria funksionale ndodh kur vlera e një atributit(teve) përcakton vlerat e atributit(teve) tjetër:

StudentID EmriStudentitStudentID (NrKampusit, NrDhomes, Pagesa)

Atributi në anën e majtë të varshmërisë funksionale quhet përcaktues (determinant)

Varshmëritë funksionale mund të bazohen edhe në ekuacione:

Totali = Sasia X Çmimi (Quantity, UnitPrice) ExtendedPrice

(Sasia, Çmimi) Totali

Varshmëritë funksionale nuk janë ekuacione!

Page 44: Ligjerata 7

44

Varshmëritë funksionale nuk janë ekuacione!

ObjectColor Weight ObjectColor Shape ObjectColor (Weight, Shape)

Page 45: Ligjerata 7

45

Përcaktuesit e përbërë

Përcaktuesit e përbërë: Përcaktues i një varshmërie funksionale që përbëhet nga më shumë se një atribut

(StudentName, ClassName) (Grade)(EmriStudentit, Lënda) (Nota)

Page 46: Ligjerata 7

46

Rregullat e varshmërisë funksionale

Nëse A (B, C), atëherë A B edhe A C Nëse (A,B) C, atëherë as A edhe as B nuk përcakton C

vetëvetiu

Page 47: Ligjerata 7

47

Varshmëritë funksionale në tabelën SKU_DATA

Page 48: Ligjerata 7

48

Varshmëritë funksionale në tabelën SKU_DATA

SKU (SKU_Description, Department, Buyer)

SKU_Description (SKU, Department, Buyer)

Buyer Department

Page 49: Ligjerata 7

49

Varshmëritë funksionale në tabelën ORDER_ITEM

Page 50: Ligjerata 7

50

Varshmëritë funksionale në tabelën ORDER_ITEM

(OrderNumber, SKU) (Quantity, Price, ExtendedPrice)

(Quantity, Price) (ExtendedPrice)

Page 51: Ligjerata 7

51

Çelsat

Një çelës është një kombinim i një apo më shumë kolonave që përdoret për identifikim të rreshtave në relacion

Çelësi i përbërë është çelës që përbëhet nga dy apo më shumë kolona

Page 52: Ligjerata 7

52

Çelësi kandidat dhe primar

Çelësi kandidat është çelës që përcakton të gjitha kolonat tjera të relacionit

Çelësi primar është çelës kandidat i zgjedhur si primar Ka një dhe vetëm një çelës primar për një relacion Çelësi primar mund të jetë çelës i përbërë Çelësi primar ideal është i shkurtërm numerik dhe që nuk

ndryshon kurrë

Page 53: Ligjerata 7

53

Çelësat surrogat

Çelësi surrogat është një kolonë artificiale e shtuar në relacion që të shërbejë si çelës primar: E shton DBMS I shkurtër, numerik dhe nuk ndryshon kurrë - çelës

primar ideal! Ka vlera artificial që nuk kanë kuptim për

shfrytëzuesit Normalisht fshihet në forma apo raporte

Page 54: Ligjerata 7

54

Çelësat surrogat

SHËNIM: Çelësi primar është i nënvizuar:

RENTAL_PROPERTY pa çelës surrogat:RENTAL_PROPERTY (Street, City,State/Province, Zip/PostalCode, Country, Rental_Rate)

RENTAL_PROPERTY me çelës surrogat:RENTAL_PROPERTY (PropertyID, Street, City,State/Province, Zip/PostalCode, Country, Rental_Rate)

Page 55: Ligjerata 7

55

Çelësat e jashtëm

Çelës i jashtëm është çelës primar i një relacioni që vendoset në një relacion tjetër për të formuar link ndërmjet relacioneve: Çelësi i jashtëm mund të jetë kolonë e vetme ose

çelës i përbërë

Page 56: Ligjerata 7

56

Çelësat e jashtëm

SHËNIM: Çelësat primar të relacioneve janë nënvizuar dhe çelësat e jashtëm janë në italics :

DEPARTMENT (DepartmentName, BudgetCode, ManagerName)EMPLOYEE(EmployeeNumber, EmployeeName, DepartmentName)

Page 57: Ligjerata 7

57

Rregulla e integritetit regerencial

Rregulla e integritetit referencial është fjali që kufizon vlerat e çelësit të jashtëm me vlerat për çelsin primar ekzistues në relacionin korespondues

Çelësi i jashtëm me rregullën e integritetit referencial

SHËNIM: Çelësi primar i relacionit është nënvizuar dhe çelësi i jashtëm është në italics:

SKU_DATA (SKU, SKU_Description, Department, Buyer)ORDER_ITEM (OrderNumber, SKU, Quantity, Price, ExtendedPrice)

Where ORDER_ITEM.SKU must exist in SKU_DATA.SKU

Page 58: Ligjerata 7

58

PYETJE???

Thank You!Thank You!