You are on page 1of 92

DISTRIBUIRANA OBRADA I RELACIONE BAZE PODATAKA

mr Duan Markovi soba 237 ponedeljak od 12-14h

TA JE BAZA PODATA?

Izraz Izraz baza baza podatakakoristi podatakakoristi se se za za opisivanje opisivanje svaega svaega od od obine obine grupe grupe podataka, podataka, do do sloenog sloenog skupa skupa alatki. alatki.

TERMINOLOGIJA RELACIONIH BAZA PODATAK


Sistem koji radi s bazom podataka Aplikacija -se sastoji iz obrazacaMaina baze podataka nije sastavni deo baze podataka-

Baza podataka -sadri fiziki oblik eme i podataka-

ema baze podataka -opisuje model-

Model podataka

Prostor problema neki dobro definisan deo stvarnog sveta-

PROSTOR PROBLEMA (problem space)


Po svojoj prirodi je zbrkan i sloen.

Meutim za uspeh projekta je vrlo vano da sistem za koji projektujete bazu podataka bude ogranien na tano definisani skup objekata i njihovih odnosa.

MODEL PODATAKA (data model)


Model podataka obuhvata opis veza ili odnosa izmeu pojedinih entiteta kao i ogranienja.

Model podataka nita ne govori o fizikoj strukturi sistema

EMA BAZE PODATAKA (database shema)

To je preslikavanje pojmovnog modela u fiziki oblik, koji se moe realizovati.

BAZA PODATAKA

Sadri fizike tabele u kojima se uvaju podaci, upiti i uskladitene procedure.

MAINA BAZE PODATAKA (database engine)


Prepoznaje tabele, okidae i slinih elemenata.

Na ovom nivou ne morate da se bavite fizikim oblikom baze podataka

APLIKACIJA
Sastoji se od obrazaca i izvetaja sa kojima radi korisnik

Ovde spada i posredniki sloj ili IIS ija je namena da povezuje eonu i pozadinsku komponentu sistema

ALATKE ZA RAD SA BAZAMA

Zadatak Zadatakmaine mainebaze baze podataka je da fiziki podataka je da fiziki manipulie manipuliepodacima podacimakao kao to tosu susmetanje smetanjena nadisk diski i uitavanje uitavanjessnjega njegana na zahtev zahtev

MICROSOFT JET
Microsoft Jet je stona maina baze podataka, namenjena sistemima koji se po veliini mogu svrstati u opseg od malih do srednjih

SQL SERVER

SQL Server koristi klijent/server arhitekturu i namenjen je od srednjih do ogromnih sistema.

Objektni modeli za pristupanje podacima


Microsoft (zasad) stavlja na raspolaganje tri objektna modela za pristupanje podacima.
Data Data Access Access Objects Objects (DAO), (DAO), koji koji postoji postoji u u dve dve varijante varijante (DAO/Jet (DAO/Jet ii DAO/ODBC DAO/ODBC Direct) Direct) Microsoft Microsoft ActiveX ActiveX Data Data Objects Objects (ADO) (ADO) ADO.NET ADO.NET

DAO

DAO DAOje jenajefikasniji najefikasniji objektni objektnimodel modelza zarad radsa sa Jetovim Jetovimbazama bazamapodataka podatakau u Access -u Access-u

ADO

ADO ADOje jejednostavniji jednostavniji od odDAO DAOi idonosi donosi pobolj anje u poboljanje uvidu vidu podr ke za rad podrke za radss nepovezanim nepovezanim hijerarhijskim hijerarhijskim skupovima skupovimapodataka podataka

Okruenje za definisanje podataka


Ovo Ovo okruenje okruenje je je Access Access ii SQL SQL Server Server Enterprise Enterprise Manager Manager ii slue slue nam nam kao kao nain nain za za opisivanje opisivanje struktuiranje struktuiranje podataka podataka

Razvoj eone komponente aplikacije

Alat Alat za za korienje korienje izrade izrade obrazaca obrazaca ii izvetaja izvetaja su su Access Access ii Visual Visual Studio Studio .NET .NET

Relacioni model
Relacioni model se bazira na grupi matematikih principa izvedenih iz teorije skupova i predikatne logike

Pravilarelacionog relacionogmodela modeladefiniu: definiu: Pravila 1. oblik obliku ukojem kojemse sepodaci podacipredstavljaju predstavljaju(struktura), (struktura), 1. 2. nain nainna nakoji kojise sepodaci podacitite tite(integritet (integritetpodataka) podataka)ii 2. 3. operacije operacijekoje kojese semogu moguizvriti izvritinad nadpodacima podacima(manipulisanje (manipulisanje 3. podacima) podacima)

Odlike relacionog sistema


Svi podaci se konceptualno predstavljaju organizovani u redove i kolone; skup tako organizovanih podataka zove se relacija (relation) Sve vrednosti su skalarne. To znai da se na svakom mestu koje je odreeno datim redom i kolonom, nalazi jedna i samo jedna vrednost Sve operacije obavljaju se nad celom relacijom, a rezultat je takoe cela relacija. Taj koncept je poznat kao celovitost (closure).

Relaciona terminologija
Atributi Zaglavlje

Formalna terminologija Konceptualna Fizika relacija tabela atributi torka polje zapis

MS Access tabela ili skup zapisa polje zapis

SQL Server tabela ili skup zapisa kolona red

Model podataka
Model podataka je najapstraktniji nivo projektovanja baza podataka, to predstavlja konceptualni opis prostora problema.

Modeli podataka sastoje se od elemenata: 1. entiteta 2. atributa 3. domena i veze

Entiteti (entity)
Entitet emu sistem Entitet je je sve sve o o emu sistem treba ti podatke treba da da skladi skladiti podatke

Primeri Primeri entiteta: entiteta: 1.Kupci 1.Kupci 2.Prodavci 2.Prodavci 3.Studenti 3.Studenti itd.. itd..

Atributi
Atributi, poblie odreuju entitete.

Odreivanje Odreivanje atributa atributa koje koje ete ete ugraditi ugraditi u u svoj svoj model, model, morate morate doneti doneti na na osnovu osnovu znaenja znaenja podataka podataka ii naina naina na na koji koji e e se se oni oni koristiti koristiti

Prva strategija odreivanje atributa


Krenite Krenite od od rezultata rezultata ii nemojte nemojte praviti praviti slo eniju strukturu to je sloeniju strukturu nego nego to je zaista zaista potrebno. potrebno.

Drugim reima, treba nai odgovor na koja pitanja vaa baza podataka mora dati odgovor

Druga strategija
Otkrijte izuzetke
Prvo - morate identifikovati sve izuzetke Drugo sistem morate projektovati tako da obrauje to vei broj izuzetaka ali da pri tome ne zbunjuje korisnika

Imajte u vidu da morate napraviti kompromis izmeu fleksibilnosti i sloenosti

Domen (domain)

Domen Domen predstavlja predstavlja skup skup svih svih prihvatljivih prihvatljivih vrednosti vrednosti koje koje atribut atribut moe moe imati imati

Veze/odnosi izmeu entiteta (relationship)


Pod vezom ili odnosom izmeu entiteta podrazumeva se njihova asocijacija Entiteti izmeu kojih postoji veza ili odnos zovu se uesnici veze (participants) Broj uesnika odreuje stepen veze

Binarna veza
Binarna veza predstavlja vezu izmeu dva entiteta.

Specijalan Specijalan sluaj sluaj binarne binarne veze veze je je entitet entitet koju koju uestvuje uestvuje u u vezi vezi sa sa samim samim sobom. sobom. To To se se esto esto zove zove veza veza tipa tipa sastavnice sastavnice ii najee najee se se koristi koristi za za predstavljanje predstavljanje hijerahijskih hijerahijskih struktura. struktura.

Vrsta veza izmeu entiteta

Jedan prema jedan Jedan prema vie Vie prema vie

Veza tipa jedan prema jedan

Veze tipa jedan prema jedan su retke, ali mogu biti korisne u nekim okolnostima

Veza tipa jedan prema vie

Veze tipa jedan prema vie su verovatno najuobiajenija vrsta.

Veza tipa vie prema vie


Veze tipa vie prema vie nisu neoubiajene i mogu se nai brojni primeri

Struktura modela objekti-veze MOV


U okviru MOV sistema, vri se opisivanje objekata i njihovih veza ta su objekti? Objekat u modelu predstavlja bilo neki fiziki objekat ili koncept realnog sistema (konkretan proizvod , konkretnog radnika, vremenski trenutak ili period, smer studija i slino)

studira Student
Studiranje

pohaa Fakultet

Objekat

Veza

Objekat

Veze u modelu opisuju nain povezivanja (uzajamna dejstva) objekata

Struktura modela objekti-veze MOV


U MOV-u se direktno predstavljaju samo binarne veze, veze izmeu dva objekata

Svaki tip binarne veze tipova objekata E1 i E2 definie dva tipa preslikavanja E1--->E2 i inverzno preslikavanje, E2-->E1

U prethodnom primeru: 1. Studira: Student Fakultet (Student studira fakultet) 2. Pohaa: Fakultet Student (Fakultet pohaa studenti)

Konvencije za koncept veza


Nazivi Nazivi veza veza se se uvek uvek zadaju zadaju Nazivi Nazivi preslikavanja preslikavanja se se obavezno obavezno zadaju zadaju u u rekurzivnim rekurzivnim vezama vezama (binarna (binarna veza veza nad nad jednom jednom klasom) klasom) Nazivi Nazivi preslikavanja preslikavanja u u ostalim ostalim vezama vezama su su opcioni opcioni ii zadaju zadaju se se samo samo kada kada je je neophodno neophodno istai istai ulogu ulogu objekata objekata u u vezi, vezi, odnosno odnosno kada kada se se uloga uloga oba oba objekta objekta u u vezi vezi ne ne moe moe dedukovati dedukovati iz iz naziva naziva veza. veza.

Kardinalnost veza
Kardinalnost veza E1 E2 definie se parom (DG, GG) DG donja granica, daje najmanji mogui GG gornja granica, daje najvei mogui broj pojavljivanja objekta E2 DG =<GG
studira Student (0,1)
Studiranje

pohaa (0,M) Fakultet

Objekat

Veza

Objekat

Atribut i domen
Objekti se opisuju preko svojih atributa Atributi uzimaju vrednost iz skupa moguih vrednosti, koji se nazivaju domeni
Ime (1,1) jezici (1,M) datRodjenja (1,1) (1,M) Naziv Adrese (1,1) Adresa (1,1)

Student
(1,1) brIndexa

studiranje

Fakultet

Atributi i domeni
Jednoznani atributi objekta su atributi sa kardinalnou DG=1 i GG=1 nazivaju se indetifikatori objekta Vieznani atributi su atributi sa GG=M

Atributi i domeni
Ako domen vieznanog atributa ima unapred zadat, semantiki skup vrednosti, tada se on modelira kao objekat. Ako domen vieznanog atributa nema unapred zadat semantiki znaajan skup vrednosti, tada se predstavlja preko novog koncepta (identifikaciono zavisnog slabog objekta).

Jezici
0,M Ime
Zna

Naziv

Naziv Adresa studira (0,1) pohaa


studiranje

datRodjenja

ZnaJezik 1,M (0,M)

Student
brIndexa 1,M

Fakultet

Adrese
Ulica Broj

Slabi objekat

Slabi objekat u modelu ne moe da postoji (egzistencijalno je zavisan) i ne moe da se identifikuje bez veze sa njemu nadreenim objektom

Ogranienja
Jezik za definisanje ogranienja moe da se bazira na konceptu primitivnih i sloenih ogranienja Primitivna ogranienja se konstruiu preko sledeih operatora

konstanta (>,<,,,=,)
Between konstanta, gde su konstante vrednosti iz datog domena In(lista vrednosti), gde se lista formira od konstanti iz odgovarajueg domena. NotNull, kada dato polje ne moe da dobije nula vrednost, odnosno mora uvek da ima vrednost
Sloena ogranienja se formiraju od primitivnih ili drugih sloenih ogranienja vezujui ih logikim operatorima And, Or i Not

Generalizacija i specijalizacija

Generalizacija je apstrakcija u kojoj se skup slinih tipova objekata tretira kao generiki tip (nadtip). Slini tipovi su tipovi koji imaju neka zajednika svojstva ili veze. Specijalizacija je inverzni postupak u kome se za neki tip objekata, definiu njegovi podtipovi, koji imaju neka njima specifina svojstva.

Primer
IMe Prezime Zaposleni vrsta (0,1) JMDG

s
predmet

plata

Profesor

Tehniko osoblje

Odravanje

Oznaavanje generalizacije

Generalizacija, Generalizacija, odnosno odnosno specijalizacija specijalizacija se se u u MOV S MOV predstavljaju predstavljaju specijalnom specijalnom oznakom oznakom S (potie (potie od od Subtype) Subtype) vezom, vezom, koja koja se se esto esto naziva naziva ii ISA ISA

Ekskluzivna specijalizacija

Eksluzivna Eksluzivna specijalizacija specijalizacija je je da da kada kada se se jedno jedno pojavljivanje pojavljivanje tipa tipa moe moe specijalizovati specijalizovati u u samo samo jedan jedan podtip. podtip. GG=1 GG=1

Neekskluzivna specijalizacija

Kada se jedno pojavljivanje tipa moe specijalizovati u pojavljivanju razliitih podtipova GG>1

Obavezna specijalizacija
Obavezna specijalizacija je kada pojavljivanje tipa mora specijalizovati neki podtip (unija podtipova je jednaka nadtipu) DG=1

Neobavezna specijalizacija

Neobavezna specijalizacija je kada je DG=0

Agregacija i dekompozicija
Agregacija je apstrakcija u kojoj se skup povezanih objekata tretira kao jedinstveni objekat na viem nivou apstrakcije. Zbog toga to istovremeno predstavlja i jedinstveni objekat i vezu objekata koje ga ine agregacija se esto zove i meovit tip objekata-veza Dekompozicija je inverzna agregaciji

Specifinost agregacije
Agregacija je egzistencialno zavisna od svojih komponenti Agregirani objekat se razlikuje od ostalih objekata u sistemu po tome to nema svoj sopstveni identifikator, ve ga identifikuju objekti koje on agregira.

ime

jmbg

datum

ocena

sifrapred.

Student

Prijava
(1,1) overa

Predmet

naziv
(0,M)

brIndexa Ime

Profesor

Zvanje

Primer
Potrebno je voditi evidenciju o svim lekovima sa sledeim osnovnim atributima. Komercijalni naziv, Hemijski naziv, Doziranje, Dejstvo, Neeljeni efekti. Svaki lek se koristi za leenje najmanje jedne vrste bolesti. S druge strane, za svaki lek potrebno je dati kontraindikacije kojih moe biti vie. Svaki lek pripada samo jednoj primarnoj grupi lekova (antibiotici, analgetici, antipiretici). Lek proizvodi jedan i samo jedan proizvoa. Lek se pakuje u vie oblika (tableta, sirup, injekcijaprasak. Za svaku vrstu pakovanja leka potrebno je voditi evidenciju o koliini i sastavu.

Kontraindikacije

Grupa
0,M

NazivGrupe

Dejstvo
0,M Pripadnost 1,1

Naziv

Doziranje

HemNaziv

Lek
1,M

1,1

Proizvodi

1,M

Proizvoa

1,M

KomNaziv

Pakuje

0,M

Pakovanje
NeEfekat Bolest oblik koliina sastav

Primer za vebu
Nacrtati dijagram objekti-veze za video klub. Potrebno je obezbediti pretraivanje po nazivu filma, anru, reiseru, glumcima, scenaristi i muzici. Voditi evidenciju o lanu video kluba (osnovni atributi: JMBG, Ime, Prezime, Status). Video klub poseduje vie kaseta (kopija) istog filma. Potrebno je obezbediti praenje istorijata izdavanja i vraanja svake kasete. Jedan lan kluba moe dnevno zaduiti vie kaseta.

Ogranienja
MOV najveu panju posveuje strukturi modela, ogranienja, operacije i na dinamika pravila integriteta (ali samo ovla)

Ogranienja se klasifikuju na sledee klase: Strukturna ogranienja To su jeziki iskazi koji su bitni samo u onim delovima u kojima je mogue da operacije auriranja baze narue strukturu modela Vrednosna ogranienja, definiu dozvoljene vrednosti atributa i dozvoljene promene ovih vrednosti.

Operacije
Ubacivanje (Insert) Izbacivanje (Delete) Auriranje (Update)

Dinamika pravila integriteta

Dinamiko pravilo integriteta ini trojka <Ogranienje, Operacija, Akcija> preko koga se iskazuje koje se akcija preduzima kada neka operacija narui definisano ogranienje.
Postoje Postoje : : 1. 1.Prosta Prosta ogranienja ogranienja 2. 2.Sloena Sloena vrednosna vrednosna pravila pravila integriteta integriteta

Prosta ogranienja
Prostim ogranienjima nazivamo ogranienjima na pojedinanim vrednostima atributa koji mogu da se narue prilikom operacija ubacivanja i auriranja. Zato se formira tabela ATRIBUT, DOMEN, OGRANIENJE, AKCIJA
Atribut Domen Ogranienje Akcija

Starost

tinyint

Between 15,65

Poruka: Starost van opsega Poruka:Jezik ne postoji

NazivJ

string

In (Ruski, Engleski, Nemaki, panski)

Sloena vrednosna pravila integriteta

Uobiajeno je da je akcija koja se definie jedinstvena za sva mogua naruavanja posmatranog ogranienja

Strukturna dinamika pravila integriteta i fiziki MOV

Strukturna dinamika pravila integriteta, nad MOV strukturom su veoma sloena. Zato je potrebno da se MOV transformie u FMOV (fiziki model objekat veze). U FMOV-u ne postoje veze u kojima oba preslikavanja imaju gornju granicu kardinalnosti M a takoe i donju granicu kardinalnosti 0. Obe ove veze se transformiu u agregaciju.

Strukturna dinamika pravila integriteta i fiziki MOV


U strukturnim dinamikim pravilima integriteta, definiu se akcije koje se preduzimaju prilikom naruavanja kardinalnosti preslikavanja i to preko sledeih kljunih rei:

Restrict Restrict Cascade Cascade SetNull SetNull SetDefault SetDefault

Restrict
Operacija Operacija se se ne ne izvrava izvrava ako ako naruava naruava odgovarajui odgovarajui strukturni strukturni integritet. integritet. Npr. Npr. nedozvoljava nedozvoljava se se brisanje brisanje nekog nekog pojavljivanja pojavljivanja ako ako postoji postoji njegov njegov preslikani preslikani deo. deo.

Cascade
Operacija Operacija se se prenosi prenosi na na objekat objekat kodomen kodomen da da bi bi se se zadovoljio zadovoljio strukturni strukturni model. model.

SetNull

Uspostavlja Uspostavlja se se veza veza sa sa nepoznatim nepoznatim objektom objektom objektom objektom (nula (nula objektom) objektom)

SetDefault

Uspostavlja Uspostavlja se se veza veza sa sa default default objektom objektom kodomena, kodomena, pod pod pretpostavkom pretpostavkom da da je je default default pojavljivanje pojavljivanje klase klase kodomena kodomena definisano. definisano.

Kontraindikacije

Grupa
0,M

NazivGrupe

Dejstvo
0,M Pripadnost 1,1

Naziv

Doziranje

HemNaziv

Lek
1,M

1,1

Proizvodi

1,M

Proizvoa

1,M

KomNaziv

Pakuje

0,M

Pakovanje
NeEfekat Bolest oblik koliina sastav

Operacije Insert Lek

Delete Lek

Insert Grupa Delete Grupa Insert Proizvoa Delete Proizvoa Insert Pakovanje Delete Pakovanje Insert Bolest Delete Bolest Insert Kontraindikacije Delete Kontraindikacije

Preslikavanje Lek -->Grupa Lek -->Proizvoa Lek -->Pakuje Lek -->Bolest Lek -->Kontaindikacije Lek -->Grupa Lek -->Proizvoa Lek -->Pakuje Lek -->Bolest Lek -->Kontaindikacije Grupa -->Lek Grupa -->Lek Proizvoa -->Lek Proizvoa -->Lek Pakovanje -->Pakuje Pakovanje -->Pakuje Bolest -->Lek Bolest -->Lek Kontraindikacije -->Lek Kontraindikacije -->Lek

Opcija SetDefault SetDefault Cascade Cascade Cascade Cascade Cascade Cascade -Restrict Cascade Restrict Restrict Restrict -

IDEF1X standard za modelovanje podataka

U IDEF1X definiu se dve vrste klasa Klasa nezavisnih (jakih) objekata Klasa zavisnih (slabih) objekata

Klasa nezavisnih (jakih) objekata


To su objekti koji se mogu identifikovati i mogu da postoje bez veze sa drugim objektima u sistemu i nisu ni slabi, ni agregacija ni podtip.

Klasa nezavisnih (jakih) objekata Deo za atribute primarnog kljua

Deo za ostale atribute

Klasa zavisnih (slabih) objekata


To su objekti koji se ne mogu identifikovati niti postojati u modelu bez veze sa njima nadreenim objektima. Klasa zavisnih objekata u IDEF1X verziji odgovaraju klase slabih objekata, agregacije i podtipovi u verziji MOV
Klasa zavisnih (slabih) objekata Atributi primarnog kljua Ostali atributi

Kategorije klase objekta


Jedna kategorija neke klase objekata predstavlja podskup pojavljivanja njoj nadreene generike klase i nasleuje sve atribute i veze svoje generike klase. On je ekvivalenat pojmu generalizacije, odnosno specijalizacije. Kompletna kategorija Nekompletna kategorija

Kompletne kategorije
A

B C

Odgovara ranije definisanom pojmu obavezne specijalizacije

Nekompletne kategorije
A

B C

Odgovara ranije definisanom pojmu neobavezne specijalizacije

Kljuevi
Po definiciji svaki pripadnik skupa ntorki je jedinstven. Posledino je da u svakoj relaciji mora postojati odreena kombinacija atributa koja na nedvosmislen nain identifikuje svaku torku.

Taj Taj skup skup ili ili kombinacija kombinacija jednog jednog ili ili vie vie atributa atributa zove zove se se kandidat kandidat za candidate )) za klju klju (( candidate key key

Kandidat za klju

Kandidat za klju moe se sastojati od samo jednog atributa (prost klju simple key) Ili od vie njih (sloeni klju composite key)

Uslove koje mora da ispuni kandidat za klju

Osim jedinstvenosti koje mora klju da obezbedi, neophodno je da klju ne moe da se razbije na prostije delove; pa iz toga sledi da skup atributa relacije ne mora obavezno biti kandidat za klju

Kada je jedini mogui kandidat suvie nezgrapan na primer, zato to zahteva previe atributa ili je preveliki moete dodati polje s vetakim kljuevima iji je tip podataka takav da sistem automatski generie vrednosti kljua.

Polja tog tipa, u Microsoftovom Jetu zove se AutoNumber, a u SQL Serveru Identity

Ponekad mada ne esto dogaa se da relacija ima vie od jednog kandidata za kljueve.

U Utakvim takvimsluajevima, sluajevima,jedan jedanod odkandidata kandidatase seodreuje odreujekao kao primarni primary ), primarniklju klju(( primarykey key ),a adrugi drugikandidati kandidatise sesmatraju smatraju alternativnim alternate ). alternativnimkljuevima kljuevima(( alternatekeys keys ).

Primarni klju
Osnovne osobine primarnog kljua

1. Mora da jedinstveno identifikuje svaku ntorku. 2. Ni jedan deo primarnog kljua ne moe biti NULL ili prazan (empty) ili nedostajui (missing) 3. Klju treba biti razumno mali 4. Treba izbegavati upotrebu inteligentnih kljueva (na primer gde struktura brojeva identifikuje grupisanje, lociranje, klasifikaciju, datume.

Alternativni i inverzni kljuevi


Kandidati za kljuev koji nisu izabrani za primarne kljueve mogu se definisati kao alternativni klju (Akn)

Alternativni klju (Akn) predstavlja atribut ili grupu atributa koji jedinstveno identifikuje ntorke. Ali za razliku od primarnog kljua moe imati i NULL vrednost

Inverzni klju

Atributi koji nemaju jednoznanost a slue nam za bre pretraivanje, zovu se inverzni kljuevi sa oznakom IE.

Preneseni klju
Preneseni klju je kolekcija atributa koji u posmatranom entitetu nisu klju, ali su zato klju u nekom drugom entitetu.

Preneseni klju (Foreign Key) jeste atribut koji povezuje entitet dete sa entitetom roditelj i odreuje se oznakom FK

ija Migrac

Relaciona notacija

IDEF1X - notacija

Mogua greka

Osobina prenesenog kljua


Preneseni kljuevi mogu imati i drugo ime, to se definie kao uloga atributa u entitetu. Ime uloge (Rolename) predstavlja novo ime za prenesene kljune atribute koji definiu ulogu koju tu atributi igraju u tom entitetu. Ime uloge definie novi atribut, ije ime treba da opie poslovno pravilo.

Veze
Veza u IDEF1X metodologiji se prikazuje kao linija koja povezuje dva entiteta, sa takom na jednom kraju i glagolskom frazom napisanom du te linije

Entitet od koga je uspostavljena veza zove se roditelj (parent), a entitet ka kome je uspostavljena veza zove dete (child)

Tipovi veza

Identifikujua veza Neidentifikujua veza Veza kategorije Neodreujua veza

Identifikujua veza
Veza se zove identifikujua zato to kljuevi entiteta roditelj predstavljaju deo identiteta entiteta dete.

Entitet dete ima sloeni klju

Neidentifikujua veza
Ako se svaka ntorka dete moe jedinstveno identifikovati, bez znanja veze sa primerkom entiteta roditelj, onda se takva veza definie kao neidentifikujua
Neidentifikujua ili slaba veza zavisi od naina definisanja kljueva od roditelj ka detetu na dva naina:

1. kao obavezna neidentifikujua veza 2. kao neobavezna neidentifikujua veza

Obavezna neidentifikujua veza

Obavezujua veza (No Nulls ili Mandatory) iz perspektive roditelj, onda je dete egzistencijalno zavisno od roditelj. No Nulls ili Mandatory znai da je obavezan unos prenesenog kljua entiteta roditelj u entitet dete

Neobavezna neidentifikujua veza


Imena id: int ime: varchar(20) prezime: varchar(20) pol: varchar(10)

deca id_1: int ime: varchar(20) id: int

Ako je veza neobavezna (Nulls Allowed ili Optional), tada dete niti je egzistencijalno niti identifikaciono zavisno ali potuje vezu.

You might also like