Dijagram entitet-odnos je specijalizovana grafika koja ilustruje odnose između entiteta u bazi podataka. ER dijagrami koriste simbole da predstavljaju tri vrste informacija: entitete (ili koncepte), odnose i atribute.
Šta su dijagrami entitet-odnos?
U industrijski standardnim ER dijagramima, pravokutnici ili kvadrati predstavljaju entitete, koji su tabele koje sadrže specifične informacije u bazi podataka. Dijamanti predstavljaju odnose, koji su interakcije između entiteta. Ovali predstavljaju atribute ili podatke koji opisuju entitet.
Iako dijagrami entitet-odnos mogu izgledati komplikovano, ovi dijagrami pomažu upućenim korisnicima da razumiju strukture baze podataka na visokom nivou bez pratećih detalja. Dizajneri baza podataka koriste ER dijagrame za modeliranje odnosa između entiteta baze podataka u jasnom formatu. Mnogi softverski paketi imaju automatizirane metode za generiranje ER dijagrama iz postojećih baza podataka.
Primjer dijagrama entitet-odnos
Razmotrite primjer baze podataka koja sadrži informacije o stanovnicima grada. ER dijagram prikazan na donjoj slici sadrži dva entiteta u pravokutnicima: "Osoba" i "Grad". Jedna veza "Živi u" u dijamantu povezuje njih dvoje. Svaka osoba živi u samo jednom gradu, ali svaki grad može smjestiti mnogo ljudi. U dijagramu primjera, atributi prikazani u ovalama su ime osobe i stanovništvo grada.
Imenice se koriste za opisivanje entiteta i atributa, dok se glagoli koriste za opisivanje odnosa.
Entiteti su objekti koji se prate
Svaka stavka koja se prati u bazi podataka je entitet, a svaki entitet je tabela u relacionoj bazi podataka. Obično svaki entitet u bazi podataka odgovara redu.
Ako baza podataka sadrži imena ljudi, njen entitet bi se mogao zvati "Osoba". Tabela sa istim imenom bi postojala u bazi podataka, a svaka osoba bi bila dodijeljena redu u tabeli "Osoba".
Atributi opisuju entitete
Baze podataka sadrže informacije o svakom entitetu. Ove informacije se nazivaju atributima. Atributi se sastoje od informacija jedinstvenih za svaki navedeni entitet. U primjeru "osoba", atributi mogu uključivati ime, prezime, datum rođenja i identifikacijski broj.
Atributi pružaju detaljne informacije o entitetu. U relacionoj bazi podataka, atributi se drže u poljima u kojima se čuvaju informacije unutar zapisa. Baza podataka nije ograničena na određeni broj atributa.
Odnosi drže podatke zajedno
Vrijednost dijagrama entitet-odnos leži u njegovoj sposobnosti da prikaže informacije o odnosima između entiteta. U primjeru se mogu pratiti informacije o gradu u kojem svaka osoba živi. Informacije o gradu u entitetu "Grad" sa relacijom koja povezuje informacije "Osoba" i "Grad" takođe se mogu pratiti.
Postoje tri tipa odnosa između entiteta:
- Jedan-na-jedan: Ponekad je jedan entitet povezan sa jednim drugim entitetom. Na primjer, svaki zaposlenik u bazi podataka ima samo jedan broj socijalnog osiguranja, a broj je jedinstven.
- Jedan-prema-više: Jedan entitet takođe može biti povezan sa nekoliko drugih entiteta. Na primjer, poslovnica kompanije i svi zaposleni koji rade u toj filijali imaju odnos jedan-prema-više.
- Mnogo-na-više: Više entiteta može biti povezano sa više drugih entiteta. Na primjer, kompanija može proizvesti tri proizvoda i imati prodajno osoblje koje prodaje te proizvode. Neki od prodajnog osoblja mogu podijeliti svoje vrijeme između proizvoda.
Kako napraviti dijagram hitne pomoći
Pre nego što dizajnirate relacionu bazu podataka, ima smisla kreirati ER dijagram. Možda imate softver koji je opremljen za rukovanje ovim procesom. Ako ne, stavite olovku (ili olovku) na papir ili pronađite softverski program koji može podnijeti zahtjeve za crtanje.
Za kreiranje ER dijagrama ručno:
- Kreirajte pravougaoni okvir za svaki entitet ili koncept relevantan za vaš model.
- Nacrtajte linije za povezivanje povezanih entiteta za modeliranje odnosa. Označite odnose koristeći glagole unutar dijamantskih oblika.
- Identifikujte relevantne atribute za svaki entitet, počevši od najvažnijih atributa, i unesite ih ovalno u dijagram. Kasnije možete napraviti liste atributa detaljnijim.
Kada završite, ilustrovali ste kako su različiti koncepti povezani jedni s drugima, i imate konceptualnu osnovu za dizajn relacijske baze podataka.