58
Teknologji Informative 1

Ligjerata 7

Embed Size (px)

Citation preview

Teknologji Informative

1

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

3

Të dhënat në tabela

4

Relacionet ndërmjet tabelave

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

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

7

Shembuj të databazave

8

Komponentat e Sistemit të Databazës: Microsoft Access

9

MS Access në detaje

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

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

12

Sistemet e Databazave të klasit Enterprise

13

DBMS Produkte më të njohura

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

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

15

Metadata Tabelë tipike

16

Përmbajtja e Databazës

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

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

18

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

19

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

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

20

Dizajnimi i Databazës duke zhvilluar sistem/aplikacion

21

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

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.

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.

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

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.

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.

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.

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.

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.

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.

31

Komponentat e DBMS Procesuesi i

pyetësorëve

Menaxhuesi i databazës (DM)

Menaxhuesi i fajllave

DML preprocesuesi

DDL kompajleri

Menaxhuesi i katalogut

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?

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?

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

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

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

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

38

Një relacion

39

Relacion me vlera me gjatësi të ndryshme

40

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

41

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

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:

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!

44

Varshmëritë funksionale nuk janë ekuacione!

ObjectColor Weight ObjectColor Shape ObjectColor (Weight, Shape)

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)

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

47

Varshmëritë funksionale në tabelën SKU_DATA

48

Varshmëritë funksionale në tabelën SKU_DATA

SKU (SKU_Description, Department, Buyer)

SKU_Description (SKU, Department, Buyer)

Buyer Department

49

Varshmëritë funksionale në tabelën ORDER_ITEM

50

Varshmëritë funksionale në tabelën ORDER_ITEM

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

(Quantity, Price) (ExtendedPrice)

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

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ë

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

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)

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ë

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)

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

58

PYETJE???

Thank You!Thank You!