49
Uvod u relacione baze podataka Nenad Miti´ c Matematiˇ cki fakultet [email protected]

Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

  • Upload
    others

  • View
    28

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacione bazepodataka

Nenad MiticMatematicki fakultet

[email protected]

Page 2: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.2

Neformalni pogled na relacioni model

• Teorijska osnova relacioni model podataka.[Codd 1970g.]

• Intuitivno, relacioni model

• predstavlja jedan nacin gledanja napodatke

• sadrži pravila za predstavljanje podataka(preko tabela) i pravila za rad sa timpodacima (izdvajanje, spajanje, ....)

Page 3: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.3

Aspekti relacionog modela

• Aspekt strukture: svi podaci u bazi se korisnikuprikazuju iskljucivo u obliku tabela

• Aspekt integriteta: tabele zadovoljavajuizvesna ogranicenja (primarni i spoljašnjikljucevi, ...)

• Aspekt obrade: operatori koji su naraspolaganju korisnicima za obradu tabela sutakvi da izvode tabele iz tabela.

1 relacioni racun2 relaciona algebra

Page 4: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.4

Primer relacione baze

Baza studenata, predmeta i ispita - sadržajtabele dosijea

Indeks Ime Prezime Datum_upisa Mesto_rodenja20140021 Milos Peric 06.07.2014 Beograd20140022 Marijana Savkovic 05.07.2014 Kraljevo20130023 Sanja Terzic 04.07.2013 Beograd20130024 Nikola Vukovic 04.07.201320140025 Marijana Savkovic 06.07.2014 Kraljevo20140026 Zorica Miladinovic 06.07.2014 Vranje20130027 Milena Stankovic

Page 5: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.5

Primer relacione baze

Baza studenata, predmeta i ispita - sadržaj(dela) tabele ispita

Indeks Id_predmeta Šk_godina Oznaka_roka Ocena Dat_polaganja Poeni20140021 1001 2015 jan 9 20.01.2015 8120140022 1001 2015 jan 8 20.01.2015 7520130023 1001 2015 jan 8 20.01.2015 7620130024 1001 2015 jan 10 20.01.2015 10020140025 1001 2015 jan 6 20.01.2015 5520140026 1001 2015 jan 5 20.01.2015 2520130027 1001 2015 jan 8 20.01.2015 7620140021 2001 2015 jan 10 25.01.2015 9820140022 2001 2015 jan 9 25.01.2015 8620140025 2001 2015 jan 5 25.01.2015 020140021 3001 2015 jan 7 27.01.2015 6720130023 3001 2015 jan 5 27.01.2015 3020140026 1001 2015 feb 7 10.02.2015 6820140025 2001 2015 feb 6 10.02.2015 5520140026 2001 2015 feb 7 10.02.2015 6520140021 1021 2015 apr 7 03.04.2015 6320130023 1021 2015 apr 10 03.04.2015 9520140022 1021 2015 apr 5 03.04.201520130024 1021 2015 apr 620140026 1021 2015 jan 7

Page 6: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.6

Šema baze STUD2020

Page 7: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.7

Primer relacionih operatora - restrikcija

Restrikcija (selekcija) izdvaja pojedinacne redoveiz tabele DOSIJE WHEREDatum_upisa>’05.07.2014’

Indeks Ime Prezime Datum_upisa Mesto_rodenja20140021 Milos Peric 06.07.2014 Beograd20140025 Marijana Savkovic 06.07.2014 Kraljevo20140026 Zorica Miladinovic 06.07.2014 Vranje

Page 8: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.8

Primer relacionih operatora - projekcija

Projekcija izdvaja pojedinacne kolone iz tabeleDOSIJE over Indeks, Ime, Prezime

Indeks Ime Prezime20140021 Milos Peric20140022 Marijana Savkovic20130023 Sanja Terzic20130024 Nikola Vukovic20140025 Marijana Savkovic20140026 Zorica Miladinovic20130027 Milena Stankovic

Page 9: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.9

Primer relacionih operatora - spajanje

Spajanje kombinuje dve tabele na osnovu zajednickih vrednosti u zajednickoj

koloni (u primeru je prikazano prirodno spajanje, deo rezultujuce tabele)

DOSIJE AND ISPIT OVER Indeks

Inde

ks

Ime

Pre

zim

e

Mes

to_r

oden

ja

Dat

um_u

pisa

Id_p

redm

eta

Ško

lska

_god

ina

Ozn

aka_

roka

Oce

na

Dat

_pol

agan

ja

Bod

ovi

20140021 Milos Peric Beograd 06.07.2014 1001 2015 jan 9 20.01.2015 8120140022 Marijana Savkovic Kraljevo 05.07.2014 1001 2015 jan 8 20.01.2015 7520130023 Sanja Terzic Beograd 04.07.2013 1001 2015 jan 8 20.01.2015 7620130024 Nikola Vukovic 04.07.2013 1001 2015 jan 10 20.01.2015 10020140025 Marijana Savkovic Kraljevo 06.07.2014 1001 2015 jan 6 20.01.2015 5520140026 Zorica Miladinovic Vranje 06.07.2014 1001 2015 jan 5 20.01.2015 2520130027 Milena Stankovic 1001 2015 jan 8 20.01.2015 7620140021 Milos Peric Beograd 06.07.2014 2001 2015 jan 10 25.01.2015 9820140022 Marijana Savkovic Kraljevo 05.07.2014 2001 2015 jan 9 25.01.2015 8620130023 Sanja Terzic Beograd 04.07.2013 2001 2015 jan 8 25.01.2015 7220130024 Nikola Vukovic 04.07.2013 2001 2015 jan 7 25.01.2015 6320140025 Marijana Savkovic Kraljevo 06.07.2014 2001 2015 jan 5 25.01.2015 020140021 Milos Peric Beograd 06.07.2014 3001 2015 jan 7 27.01.2015 6720130023 Sanja Terzic Beograd 04.07.2013 3001 2015 jan 5 27.01.2015 3020130024 Nikola Vukovic 04.07.2013 3001 2015 jan 6 28.01.2015 5920140026 Zorica Miladinovic Vranje 06.07.2014 3001 2015 jan 6 28.01.2015 5220140026 Zorica Miladinovic Vranje 06.07.2014 1001 2015 feb 7 10.02.2015 6820140025 Marijana Savkovic Kraljevo 06.07.2014 2001 2015 feb 6 10.02.2015 5520140026 Zorica Miladinovic Vranje 06.07.2014 2001 2015 feb 7 10.02.2015 6520140021 Milos Peric Beograd 06.07.2014 1021 2015 apr 7 03.04.2015 6320130023 Sanja Terzic Beograd 04.07.2013 1021 2015 apr 10 03.04.2015 9520140022 Marijana Savkovic Kraljevo 05.07.2014 1021 2015 apr 5 03.04.201520130024 Nikola Vukovic 04.07.2013 1021 2015 apr 620140026 Zorica Miladinovic Vranje 06.07.2014 1021 2015 jan 720140026 Zorica Miladinovic Vranje 06.07.2014 1021 2015 feb 7

Page 10: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.10

Primer relacionih operatora - spajanje

Kod spajanja se u rezultujucoj tabeli• zajednicke vrednosti javljaju samo

jednom u redu• javljaju sve kombinacije uparenih

vrednosti (npr. 20140021 vrednost zaIndeks)• ne javljaju se redovi sa vrednostima

koje se ne nalaze u obe tabele kojeucestvuju u spajanju

Page 11: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.11

Karakteristike relacione baze

• Relacioni sistemi zahtevaju samo dase baza prikaže korisniku u oblikutabele (nacin smeštanja i cuvanja namedijumima nije specificiran)• Informacioni princip: Celokupan

informacioni kontekst baze se prikazujena tacno jedan nacin kao eksplicitnevrednosti u pozicijama vrsta i kolonatabele

Page 12: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.12

Karakteristike relacione baze - nastavak

Posledica Informacionog principa: nemapokazivaca koji medjusobno povezujutabele• pokazivaci mogu da postoje na

fizickom nivou• razlika u odnosu na nerelacione

modele gde su pokazivaci deostruktura koje se prikazuju korisnicima ikoje korisnik koristi u obradi

Page 13: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.13

Efekat relacionih operatora

• Rezultat primene svakog od operatoraje tabela - osobina zatvorenjarelacionih sistema• Rezultat primene operatora je istog tipa

kao i njegov argument =⇒ mogu da sepišu ugneždeni relacioni izrazi

Page 14: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.14

Efekat relacionih operatora

• Sve operacije ce primenjuju na ceoskup istovremeno a ne samo napojedinacni red• Rezultat operacije nije nikada

pojedinacni red vec je uvek kompletnatabela koja sadrži skup redova

Page 15: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.15

Formalni pogled na relacioni model

Relacioni model se sastoji od:• Otvorenog skupa skalarnih tipova (koji ukljucuje i tip

logickih vrednosti boolean)

• Generatora relacionih tipova i njihove odgovarajuceinterpretacije

• Mogucnosti definisanja relacionih promenljivih zagenerisane relacione tipove

• Operacije relacione dodele kojom se dodeljujurelacione vrednosti definisanim relacionim promenljivim

• Otvorenog skupa opštih relacionih operatora("relaciona algebra") za izvodjenje relacionih vrednosti izdrugih relacionih vrednosti

1 −→Relaciona algebra i relacioni racun2 −→Dodatni operatori relacione algebre

Page 16: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.16

Terminologija

Codd je pri formulisanju principa relacionih bazauveo novu terminologiju koja se razlikovala odneodredjene terminologije tog vremena

Termin ZnacenjeRelacija matematicki termin za tabeluTorka red u tabeliAtribut kolona u tabeliKardinalnost broj torkiStepen broj atributaPrimarni kljuc atribut ili kombinacija atributa koja jedin-

stveno identifikuje tabeluDomen skup važecih vrednosti (tipova)

Page 17: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.17

Terminologija

Indeks Ime Prezime Mesto_rodenja Datum_upisa20140021 Milos Peric Beograd 06.07.201420140022 Marijana Savkovic Kraljevo 05.07.201420130023 Sanja Terzic Beograd 04.07.201320130024 Nikola Vukovic 04.07.201320140025 Marijana Savkovic Kraljevo 06.07.201420140026 Zorica Miladinovic Vranje 06.07.201420130027 Milena Stankovic

Relacija je kompletna tabela (ime relacije DOSIJE)Torka je svaki red u tabeliAtributi tabele su Indeks,Ime,Prezime,Mesto_rodenja,Datum_upisa

Kardinalnost tabele je 7 (tabela poseduje 7 torki)Stepen tabele je 5 (tabela ima 5 atributa)Primarni kljuc tabele je IndeksDomeni u tabeli su skup mogucih brojeva indeksa (INDEKS),

skup mogucih imena (IME), ...

Page 18: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.18

Relacije i relacione promenljive

1 U definiciji baze studenata, predmeta iispita, DOSIJE i ISPIT su relacionepromenljive, odnosno promenljive cijesu vrednosti relacione vrednosti

2 Npr. neka DOSIJE ima tekucu vrednostiz koje treba da se izbriše red zastudenta sa brojem indeksa 20100027:

DELETE DOSIJE WHERE Indeks =Indeks(20100027);

Page 19: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.19

Relacije i relacione promenljive

Stara vrednost relacione promenljive DOSIJE jezamenjena novom relacionom vrednošcu

Indeks Ime Prezime Mesto_rodenja Datum_upisa20140021 Milos Peric Beograd 06.07.201420140022 Marijana Savkovic Kraljevo 05.07.201420130023 Sanja Terzic Beograd 04.07.201320130024 Nikola Vukovic 04.07.201320140025 Marijana Savkovic Kraljevo 06.07.201420140026 Zorica Miladinovic Vranje 06.07.2014

Operator brisanja je skracenica za relacioni operatordodeleDOSIJE := DOSIJE WHERE NOT (Indeks = Indeks(20130027));

Page 20: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.20

Relacije i relacione promenljive

1 Terminologija• relvar = relaciona promenljiva• relacija = specificna relaciona vrednost

2 Skup otvorenih ... tipova znaci dakorisnik može da definiše svojesopstvene tipove

Page 21: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.21

Osnovni relvar-i i pogledi

• Originalni relvar-i = osnovni relvar-i

• Njihove vrednosti = osnovne relacije

• Izvedene relacije = relacije koje nisu osnovneali mogu da se dobiju iz osnovnih putemrelacionih izraza

Page 22: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.22

Osnovni relvar-i i pogledi (nastavak)

• Osnovni relvar-i moraju da imaju ime

• Relacione baze imaju mehanizam zaformiranje osnovnih relvar-a

• U SQL-u su osnovni relvar-i tabele. Njihovoformiranje se vrši naredbom

CREATE TABLE <ime_osnovnog_relvara> ...

Page 23: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.23

Osnovni relvar-i i pogledi (nastavak)

• Relacioni sistemi podržavaju i imenovanerelvar-e koji su izvedene relacije - poglede

• Vrednost pogleda je (trenutni) rezultatizvršavanja odredjenog relacionog izraza kojise navodi pri formiranju pogleda

CREATE VIEW Studenti_iz_Kraljeva AS(DOSIJE WHERE Mesto_rodjenja=’Kraljevo’) {Indeks, Ime, Prezime}

Studenti_iz_KraljevaIndeks Ime Prezime20140022 Marijana Savkovic20140025 Marijana Savkovic

Page 24: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.24

Osnovni relvar-i i pogledi (nastavak)

Nad pogledima mogu da se vrše operacije kao nadosnovnim tabelama(Studenti_iz_Kraljeva WHERE Indeks > 20140023){Ime, Prezime}

Ime Prezime

Marijana Savkovic

Pri izvršavanju sistem modifikuje upit u((DOSIJE WHERE Mesto_rodjenja=’Kraljevo’) {Indeks, Ime, Prezime})WHERE Indeks > 20100023){Ime, Prezime}

Odnosno uprošcava u (DOSIJE WHERE Mesto_rodjenja=’Kraljevo’

AND Indeks > 20100023){Ime, Prezime}

Page 25: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.25

Osnovni relvar-i i pogledi (nastavak)

• Osnovni relvar-i predstavljaju podatke koji sufizicki smešteni u bazi podataka (’zaistapostoje’)

• Pogledi predstavljaju razlicit nacin gledanja na’realne podatke’ (ne postoje, virtualni relvar-i)

Page 26: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.26

Optimizacija, katalog i transakcije

1 Optimizaciju (automatsku) vrši komponentaSUBP nazvane optimizator.

2 Katalog (’recnik’) se i sam sastoji od relvar-a=⇒ katalogu se pristupa na isti nacin kao idrugim relacionim promenljivim

3 Transakcija je ’logicka jedinica posla’ kojaobicno ukljucuje više operacija nad bazom

Detaljnije o ovim karakteristikama u drugomdelu kursa

Page 27: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.27

Domeni

Domen = tip podataka• ugradjen (sistemski predefinisan)

• INTEGER• CHAR• ...

• korisnicki definisan• INDEKS• IME• GOD_RODJENJA• .....

Page 28: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.28

Domeni (nastavak)

• Provera tipova. Stroga tipiziranost• Dosije.Indeks + Ispit.ocena −→ pogrešno!• Ispit.Godina_roka * Ispit.Ocena −→

ispravno!

• Definisanje novog tipaTYPE <ime tipa> <moguce reprezentacije>

• TYPE INDEKS REPREZENT(INTEGER);

• TYPE IME REPREZENT (CHAR);

Page 29: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.29

Domeni - SQL podrška

• Naredbe

• CREATE DOMAIN• ALTER DOMAIN• DROP DOMAIN (RESTRICT, CASCADE)

• U DB2 ove naredbe ne postoje. Postoje

1 CREATE TYPE2 ALTER TYPE3 DROP TYPE

• Istovremeno se definišu i odgovarajucefunkcije i operatori poredjenja

• Nema stroge tipiziranosti ali postoji osnovnioblik provere tipova

Page 30: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.30

Domeni - SQL podrška (nastavak)

SQL podržava sledece relacione domene

1 Brojevi (numbers)

2 Niske karaktera (character strings)

3 Niske bitova (bit strings)

4 Datumi (dates)

5 Vremena (times)

6 Kombinacija datuma i vremena (timestamps)

7 Intervali godina/mesec (year/month intervals)

8 Intervali dan/vreme (day/time intervals)

9 ...

Page 31: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.31

Relacije

Neka je dat skup od n tipova ili domena Ti(i=1,2,...,n), pri cemu ne moraju svi tipovi da budumedjusobno razliciti. R je relacija nad tim tipovimaako se sastoji od dva dela, zaglavlja i tela gde važi:

1 Zaglavlje je skup od n atributa oblika Ai : Tigde su Ai (koji svi moraju da budu razliciti)imena atributa relacije R, a Ti odgovarajucaimena tipova (i=1,2,...,n)

2 Telo je skup od m torki t gde je t skupkomponenti oblika Ai : vi u kojima je vi vrednosttipa Ti

m se naziva kardinalnost, a n stepen (arnost)relacije R

Page 32: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.32

Osobine relacije

• Nema ponovljenih (duplih) torki

• Torke su neuredjene, od vrha ka dnu

• Atributi su neuredjeni, sa leva u desno

• Svaka torka sadrži tacno jednu vrednost zasvaki atribut. Za relaciju koja zadovoljava ovuosobinu se kaže da je normalizovana,odnosno da je u prvoj normalnoj formi.

Page 33: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.33

Relacija = tabela?

Nisu jednake, jer• Tabela moze da sadrži duplirane redove dok

relacija ne može da sadrži duplirane torke

• Redovi u tabeli su uredjeni u redosledu od vrhaka dnu, dok za relaciju to ne važi

• Kolone u tabeli su uredjene u redosledu sa levau desno, dok za relaciju to ne važi

Page 34: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.34

Relacije i prazan skup

• Relacija koja ima prazan skup torki• neprazno zaglavlje• telo je prazno

• Relacija koja ima praznu torku• prazno zaglavlje• telo sa jednom torkom bez komponenti

Page 35: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.35

Tipovi relacije

Definicija tipa relacije ima sledeci oblikRELATION {<lista atributa razdvojenih zarezima>}

atribut je uredjen par oblika<ime atributa> <ime tipa>

Primer:RELATION {Indeks INDEKS, Ime IME, Prezime PREZIME,

God_rodjenja GOD_RODJENJA, Mesto_rodjenja

MESTO_RODJENJA}

Page 36: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.36

Atributi i tipovi podataka

• Svaki atribut ima neki tip• Svaki tip može da bude ugradjen ili

korisnicki definisan• Svaki tip može da bude atomski

(skalarni) ili ucauren (nije skalaran)• Atributi relacije mogu da budu

proizvoljnog tipa

Page 37: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.37

Zašto nedostajuce vrednosti

U svakodnevnoj praksi se cesto javljaproblem nedostatka podataka:• ’...datum rodjenja nepoznat...’

• ’...iz izborne jedinice XX nedostaju podaci...’

• ...

Potreba da se• indikator o nedostatku vrednosti cuva u bazi

• na odgovarajuci nacin vrši obrada takvihpodataka

Page 38: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.38

Zašto nedostajuce vrednosti (nastavak)

• Najcešci pristup prihvacen i u praksi jekorišcenje ’nedostajuce vrednosti’(NULL) odnosno trovalentne (3VL)logike• Codd jer predlozio korišcenje

4-valentne logike jer postoje dve vrstenedostajucih vrednosti:• vrednost je nepoznata• vrednost nije primenljiva, vrednost ne

postoji, ...

Page 39: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.39

3VL logika

Tri vrednosti• Tacno• Netacno• Nepoznato (kod DATE-a UNK od

unknown)

Operatori: I, ILI, NE, MOŽDA (AND, OR,NOT, MAYBE)

Page 40: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.40

3VL logika (nastavak)

AND t u f OR t u f NOTt t u f t t t t t fu u u f u t u u u uf f f f f t u f f t

Page 41: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.41

Operator MOŽDA

MAYBEt fu tf f

Operator je potreban npr.zbog ovakvih upita:Prikazati sve zaposlenekoji su možda bili, ali zakoje nije sasvimpouzdano da su bili,programeri rodjeni pre25. januara 1991. godinesa platom manjom od50.000 na dan30.09.2011.

Page 42: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.42

SQL standardi

• Cita se ’S-KU-EL’ ili ’SEKUEL’

• Danas je standardni upitni jezik na RSUBP

• Prva verzija je implementirana na System R

• Standardi

• SQL/89• SQL/92 (SQL2)• SQL/99 (SQL3)• SQL:2003 (dodati OLAP, XML, ...)• SQL:2006 (dodato još XML-a)• SQL:2008• SQL:2011• SQL:2016

Page 43: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.43

Razvoj relacionih produkata

System R INGRES

Autor IBM San Jose Res. Lab UC Berkeley1974 - 1979 kasne 1970 - rane 1980

Racunar IBM System 370 DEC PDP

Operativni sistem VM/CMS UNIX

Upitni jezik SQL QUEL

Host jezik COBOL, PL/1 COBOL, PASCAL,C, FORTRAN, BASIC

Komercijalni proizvod DB2, SQL/DS Komercijalni INGRES

Distribuirana OB R* Distribuirani INGRES

OO proširenja Starburst POSTGRES

Page 44: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.44

DDL podskup SQL-a

Najvažnije naredbe

1 CREATE

2 ALTER

3 DROP

4 DECLARE

Page 45: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.45

DML podskup SQL-a

Najvažnije naredbe

1 SELECT

2 INSERT

3 UPDATE

4 DELETE

5 MERGE

Page 46: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.46

SQL podrška za nedostajuce vrednosti

• SQL pri primeni WHERE klauzule na tabelu Teliminiše sve redove za koje izraz u WHEREima vrednost netacno ili nedefinisano

• Test za null: IS [NOT] NULL

• Ne važi ekvivalencijar IS NOT NULL i NOT (r IS NULL)

• Ostali nacini obrade NULL bice dati krozprimere

Page 47: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.47

Dodatak: Neki tipovi podataka u SQL/DB2

• niske karaktera• numericki podaci• datumsko-vremenski podaci• konstante• graficke niske

• korisnicki definisani tipovi podatka• rowid vrednosti• binarne niske• LOB• XML• ...

Page 48: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.48

Dodatak: Objekti u DB2• Memorijske grupe• Baze podataka• Sheme• Prostori za cuvanje tabela• Tabele• Pogledi• Indeksi• Korisnicki definisani tipovi• Korisnicki definisane funkcije• Pul bafera• Aliasi i sinonimi• Okidaci (trigeri)• Uskladištene procedure• Planovi i paketi• Serveri• Sekvence• ...

Page 49: Uvod u relacione baze podatakapoincare.matf.bg.ac.rs/.../rbp/2.Uvod_u_relacione_baze.pdf · 2020. 10. 12. · baze podataka baze. Uvod u relacione baze podataka Neformalni pogled

Uvod u relacionebaze podatakaNeformalni pogled narelacioni model

Aspekti relacionog modela

Primer relacione baze

Primeri relacionihoperatora

Karakteristike relacionebaze

Efekat relacionih operatora

Formalni pogled narelacioni model

Terminologija

Relacije i relacionepromenljive

Osnovni relvar-i i pogledi

Ostale karakteristike

Domeni i relacijeDomeni

Relacije

Osobine relacije

Nedostajucevrednosti3VL logika

Uvod u SQLSQL standardi

Razvoj relacionih produkata

DDL podskup SQL-a

DML podskup SQL-a

SQL podrška zanedostajuce vrednosti

Dodatak: Neki tipovipodataka u SQL/DB2

Dodatak: Objekti u DB2

Dodatak: Specijalni registriu DB2

4.49

Dodatak: Specijalni registri u DB2• current application encoding scheme• current date• current degree• current locale lc_ctype• current optimization hint• current packageset• current path• current precision• current rules• current server• current sqlid• current time• current timestamp• current timezone• user