Računala Windows Internet

Vrste odnosa u erwinu. Opći principi rada u erwinu. Izrada modela u ERwinu

Laboratorij br. 5

Cilj:

Vježba:

Radni redoslijed

Upoznavanje s korisničkim sučeljem

· Preuzmite program Erwin.

U dijaloškom okviru koji se pojavi odaberite radio gumb Napravite novi model. Na ekranu će se pojaviti dijaloški okvir. Napravite model - odaberite predložak, gdje želite odabrati razinu simulacije.

Erwin ima dvije razine simulacije: logičku i fizičku. Na logično razini, podaci se prikazuju onako kako bi izgledali u stvarnom svijetu. Objekti logičke razine su entiteti i atributi.

Na fizički razini, model ovisi o određenoj implementaciji baze podataka koju odabere korisnik. Kada se model preseli na fizički sloj, entiteti se pretvaraju u tablice, a atributi u polja, tako da svi nazivi i opisi fizičkog modela moraju biti u skladu s konvencijama usvojenim za odabrani DBMS.

Instalirajte prekidač Logički/fizički stvoriti model s logičkim i fizičkim slojevima.

U poljima Baza podataka i verzija specificira tip i verziju poslužitelja za koji se model kreira. S popisa odaberite Access, 2000. Kliknite u redu.

· Na ekranu će se pojaviti glavni prozor programa.

Na vrhu prozora nalazi se naslovni redak koji sadrži naziv programa, naziv modela, naziv podskupa (Subject Area) i pohranjeni prikaz (Stored Display). Glavni dio programskog prostora zauzima radni prostor u kojem se kreira ER dijagram.

Za prebacivanje između logičke i fizičke razine, na alatnoj traci nalazi se popis (slika 1.1).

Osim ovog popisa, postoje gumbi na alatnoj traci (vidi tablicu 1.1).

Tablica 1.1.

Gumbi se nalaze na alatnoj traci programa Erwin

Dugme Svrha
Kreirajte, otvorite, spremite i ispišite model
Pozivanje dijaloga preglednika izvješća za generiranje izvješća
Promjena razine prikaza modela: razina entiteta, razina atributa, razina definicije
Promijenite skalu prikaza modela
Generiranje DB sheme, usklađivanje sheme s modelom i odabir poslužitelja (dostupno samo na razini fizičkog modela)
Prebacivanje između područja modela Subject Area


Za izravan rad s elementima modela, program ima paletu alata (Erwin Toolbox), koja je “plutajući prozor” (slika 1.2). Ako je potrebno, paleta alata se može ukloniti sa zaslona i pozvati pritiskom na kombinaciju tipki CTRL-T.

Riža. 1.2. Paleta alata na logičnoj razini

Uvođenje entiteta u model

U ovoj fazi potrebno je u model uvesti sljedeće entitete koji su identificirani kao rezultat analize predmetnog područja (isporuka robe u skladu s ugovorima): kupac, ugovor, faktura, roba, skladište.

Odaberite gumb na alatnoj traci (ERwin Toolbox). Esencija klikom na njega pokazivačem miša. Zatim kliknite na mjesto na dijagramu gdje želite postaviti novi entitet. Na polju dijagrama pojavit će se pravokutnik koji prikazuje novi entitet, s automatski generiranim imenom "E/1".

Unesite naziv subjekta " Kupac" i pritisnite Unesi.

· Na isti način umetnite još četiri entiteta u dijagram: ugovor, faktura, proizvod, skladište.

Desnim klikom na entitet i odabirom stavke iz kontekstnog izbornika Svojstva entiteta, možete pozvati uređivač entiteta Entiteti(Sl. 1.6), što vam omogućuje promjenu svojstava odabranog entiteta. Uređivač entiteta također se može pozvati iz glavnog izbornika: Model | entiteta.



Riža. 1.6. Urednik entiteta

U gornjem dijelu prozora uređivača nalazi se popis svih entiteta prisutnih u dijagramu. Pomoću njega možete odabrati entitet čija svojstva želite pogledati ili promijeniti. Prema zadanim postavkama, odabrani entitet na dijagramu je entitet na koji se klikne. Zatim, tu je polje Ime koje prikazuje naziv entiteta. Ime se može uređivati.

Ispod u prozoru uređivača nalazi se nekoliko kartica:

Definicija(definicija) - na ovoj stranici unosite definiciju entiteta.

Napomena, bilješka2, bilješka3(napomena) - koristi se za unos proizvoljnog teksta povezanog s entitetom, kao što su uzorci podataka i upiti.

UDP– korisnički definirana svojstva.

ikona(ikona) - radi jasnoće, svakom entitetu može se dodijeliti ikona koja se prikazuje pored njegovog naziva.

Za svaki entitet unesite definiciju definicija.

Ključne skupine

・Pozovite uređivač grupe ključeva Ključne grupe, desnim klikom na entitet Kupac i odabirom iz kontekstnog izbornika Ključne grupe. Uređivač grupe ključeva također se može pozvati iz glavnog izbornika: Model | ključne grupe.

Uređivač grupe ključeva sadrži kontrole:

entiteta– polje s padajućim popisom u kojem trebate odabrati entitet za uređivanje.

Prozor s popisom ključnih grupa. Svaka grupa je predstavljena zasebnom linijom, uključujući naziv (Key Group), vrstu (Type) i definiciju (Definicija).

Osim toga, dijaloški okvir za uređivanje grupe ključeva sadrži sljedeće kartice:

ü Članovi (članovi). Navedeni su članovi ključnih skupina i njihov redoslijed u grupi.

ü Općenito (opće postavke). Prekidači koji vam omogućuju postavljanje vrste grupe ključeva. Za primarne i strane ključeve ove grupe nisu dostupne.

ü Definicija (definicija). Proizvoljne tekstualne informacije vezane za odabranu grupu ključeva.

ü Napomena (napomena). Napomena odabranoj grupi.

ü UDP (prilagođena svojstva).

・Kliknite na gumb Novi.

· U prozoru Nova grupa ključeva u polju Ključna grupa unesite naziv grupe ključeva − KOSITAR. U polju Indeks prikazuje se naziv indeksa koji je generirao Erwin. Ostavite nepromijenjeno.

Sklopka Tip grupe ključeva specificira vrstu generiranog ključa. To može biti alternativni ključ ili inverzijski unos. Izaberi Alternativni ključ i pritisnite u redu. Novouneseni zamjenski ključ pojavit će se na popisu ključeva.



Idi na oznaku Članovi. Novi ključ još ne sadrži nikakve atribute, dakle pravi popis Ključni članovi grupe(članovi ključne grupe) je prazan. Odaberite atribut s popisa s lijeve strane KOSITAR i pomaknite ga na desni popis pomoću gumba sa strelicom (vidi sliku 1.8).

Riža. 1.8. Urednik ključnih grupa

· Na isti način kreirajte grupe ključeva za inverzne ulaze prikazane u tablici. 1.3.

Laboratorij br. 6

Određivanje pravila deklarativnog referentnog integriteta

· Biti na logičnom razini modela podataka, odaberite odnos “zaključuje” između entiteta Kupac i Ugovor klikom na njega pokazivačem miša. Zatim pritisnite desnu tipku miša i odaberite stavku u kontekstnom izborniku Svojstva odnosa(urednik poveznica).

U prozoru za uređivanje veza odnos idite na karticu Radnje R.I. Upoznajte se s pravilima referentnog integriteta za odnos "Kupac - Ugovor", dodijeljenim prema zadanim postavkama. Ove postavke sprječavaju umetanje i izmjenu instance podređenog entiteta, kao i brisanje i modificiranje nadređenog entiteta. To znači da nije dopušteno brisanje ili mijenjanje kupca ako baza podataka sadrži ugovore sklopljene s njim, kao ni upisivanje ugovora bez navođenja kupca ili s upućivanjem na nepostojećeg kupca. Time smo ispunili uvjet prema kojem ugovor može postojati samo za određenog kupca.

· Pregledajte uspostavljena pravila referentnog integriteta za sve ostale veze.

Zadana pravila dodijeljena poveznici mogu se promijeniti odabirom željene vrijednosti s padajućeg popisa.

Normalizacija podataka

Iz modela se može vidjeti da postoji višestruki atribut TEL u entitetu Kupac. Kupac može imati više telefonskih brojeva, što je kršenje prvog normalnog oblika, koji zahtijeva da sve vrijednosti atributa budu atomske. Stoga je potrebno atribut TEL odvojiti u zaseban entitet.

· Napravite entitet Telefon koji sadrži sljedeće atribute: TEL_CODE (primarni ključ, vrsta - broj) i TEL (vrsta - niz).

· Povežite entitete Kupac i Telefon s identifikacijskim odnosom. Postavite snagu veze - Jedan ili više (P) i unesite naziv veze - Ima.

Odabir poslužitelja

Izvršite naredbu baza podataka | Odaberite Baza podataka.

· U dijaloškom okviru Erwin/ERX - Ciljni poslužitelj morate postaviti vrstu poslužitelja - Pristup i njegovu verziju 2000 . Također specificira zadani tip podataka i NULL uvjet za novostvorene stupce. Neke od opcija u ovom dijaloškom okviru ovise o odabranoj vrsti poslužitelja.

· Nakon odabira poslužitelja, pritisnite gumb u redu.

Denormalizacija podataka

Model ima dva odnosa mnogo-prema-više: Stavka - Ugovor i Stavka - Račun, koji se moraju riješiti na fizičkoj razini. Rezultat rješavanja ovih poveznica prikazan je u tablici. 2.1.

Tablica 2.1.

Rezultat rješavanja odnosa mnogo prema mnogo

Razrješavanje relacija "mnogo-prema-više" provodi se automatski pri prelasku na fizički sloj ili korištenjem posebnog čarobnjaka Čarobnjak za transformaciju mnogih odnosa.

· Za pozivanje ovog čarobnjaka odaberite poveznicu „Roba – Ugovor” klikom na nju pokazivačem miša. Zatim pritisnite desnu tipku miša i odaberite stavku u kontekstnom izborniku Napravite tablicu asocijacija(napravi asocijativnu tablicu). Na ekranu će se pojaviti prvi dijaloški okvir čarobnjaka koji sadrži tekst o svojoj namjeni.

Unesite u polje naziv tablice(naziv tablice) - Plan_isporuke. U polju Komentar tablice(komentari na tablicu) upisati tekst: Podaci o isporuci robe po ugovoru.

· Na modelu se pojavila nova tablica Plan_isporuke, povezana identifikacijskim odnosom s tablicama Roba i Ugovor.

· Novu tablicu treba dopuniti s tri stupca (vidi tablicu 2.1). Da biste to učinili, odaberite tablicu Plan_isporuke klikom na njega pokazivačem miša. Zatim pritisnite desnu tipku miša i odaberite stavku u kontekstnom izborniku Stupci ( urednik kolumne) . Rad s ovim uređivačem sličan je radu s uređivačem atributa.

· Samostalno unesite tri nova stupca u skladu s tablicom. 2.1.

· Koristeći gore opisanu metodu (pomoću čarobnjaka), transformirajte odnos "Roba - faktura" i dopunite rezultirajuću asocijativnu tablicu Pošiljka s dva stupca prema tablici. 2.1.

Postavljanje pravila provjere valjanosti

Određivanje popisa valjanih vrijednosti

U skladu s predmetnim područjem koje se razmatra, za polje RATE_VAT tablice proizvoda postavimo popis valjanih vrijednosti: 0, 10 i 18%.

Kolumne.

· U prozoru uređivača u polju Stupac- STOPA PDV-a.

· Idite na karticu odabranog DBMS-a – Pristup.

· Vrijedi.

u dijalogu Pravila validacije kliknite gumb Novi.

u dijalogu Novo pravilo valjanosti u polju Logično unesite naziv pravila − Provjera stope PDV-a. Kliknite gumb u redu.

・Idite na oznaku Općenito. U grupi tip postaviti opciju Popis valjanih vrijednosti.

· Na terenu Valjana vrijednost u prvi redak unesite 0. U drugi i treći redak unesite vrijednosti: 10 i 18.

· Provjerite to na vrhu prozora uređivača Pravila validacije pojavila se linija: Provjera stope PDV-a(Naziv za provjeru valjanosti) IN (0, 10, 18)(Pravilo provjere valjanosti).

·Klik U REDU. U prozoru uređivača stupaca na oznaci Pristup u polju Vrijedi pojavio se naziv kreiranog pravila - "Provjera stope PDV-a".

Postavljanje zadanih vrijednosti

Kreirajmo pravilo prema kojem će se vrijednost tekućeg datuma prema zadanim postavkama zamijeniti u polju DATE_DOG u tablici Ugovora.

Pozovite kontekstni izbornik tablice Ugovora i odaberite stavku Kolumne.

· U prozoru uređivača u polju Stupac odaberite stupac za koji će se postaviti pravilo – DATUM_PAS.

・Označeno Pristup kliknite na gumb koji se nalazi desno od padajućeg popisa Zadano.

· U dijaloškom okviru Zadane/početne vrijednosti kliknite gumb Novi.

u dijalogu Nova zadana vrijednost u polju Logično unesite naziv pravila − Trenutni datum. Kliknite gumb u redu.

・Označeno Pristup u polju Vrijednost poslužitelja - Zadana postavka pristupa Unesi Datum()(funkcija koja prima vrijednost trenutnog datuma).

·Klik U REDU. U prozoru uređivača stupaca na oznaci Pristup u polju Zadano pojavio se naziv kreiranog pravila - "Trenutni datum".

· Postavite isto pravilo za polje DATE_SHIPMENT u tablici Faktura. Da biste to učinili, u prozoru uređivača stupaca Stupac odaberite polje DATE_OTGR i na kartici Pristup u polju Zadano odaberite pravilo s padajućeg popisa Trenutni datum.

Određivanje pravila za provjeru valjanosti unosa

Kreirajmo pravilo za provjeru ulaznih vrijednosti za polje PRICE tablice proizvoda, prema kojem ovo polje ne može imati vrijednosti manje od 0.

Pozovite kontekstni izbornik tablice proizvoda i odaberite stavku Kolumne.

· U prozoru uređivača u polju Stupac odaberite stupac za koji će se postaviti pravilo – CIJENA.

・Označeno Pristup kliknite na gumb koji se nalazi desno od padajućeg popisa Vrijedi.

u dijalogu Pravila validacije kliknite gumb Novi.

u dijalogu Novo pravilo valjanosti u polju Logično unesite naziv pravila − Provjera cijene. Kliknite gumb u redu.

・Idite na oznaku Općenito. U grupi tip postaviti opciju min/maks.

· Na terenu Min unesite 1. Osim donje granice raspona vrijednosti, ovdje možete postaviti i gornju granicu ( Maks).

Na vrhu prozora uređivača Pravila validacije novostvoreno je dodano na popis pravila za provjeru valjanosti: Provjera cijene >=1.

・Kliknite na gumb u redu.

Laboratorij br. 7

Izračun veličine baze podataka

Cilj:

Ovladati metodologijom za izračunavanje veličine baze podataka, implementiranom u Erwinu.

Laboratorij br. 8

Izrada izvješća u Erwinu

Cilj:

proučavanje vrsta izvješća;

· Naučite kako izraditi izvješća

Laboratorij br. 5

Osnove rada u Erwinu. Izgradnja logičkog modela podataka

Cilj:

· ovladavanje vještinama rada u Erwinu;

· izgradnja logičkog modela zadanog predmetnog područja.

Vježba:

Izgraditi logički informacijski model za nabavu robe u skladu s ugovorima koristeći Erwin alate.

Laboratorijski rad №4. Definiranje odnosa između entiteta u ERwinu

Kao što je navedeno u vježbi 3, za izgradnju logičkog modela podataka, prije svega, potrebno je definirati skup entiteta i definirati odnose između njih. U vježbi 3 izrađen je dijagram koji sadrži četiri entiteta (slika 4.1). Metodologiju za određivanje odnosa među njima razmotrit ćemo u trenutnoj vježbi.

https://pandia.ru/text/78/177/images/image002_182.gif" width="123" height="128 src=">zadani generirani glagolski izraz je "R/1" (slika 4.2).

Slika 4.2 - Neidentifikacijski odnos

Korak 3 Idite na razinu atributa i primijetite da je entitet “Mjesto učenja” dodao atribut primarnog ključa iz entiteta “Razred” i da je označen slovima “FK”. Za atribut se kaže da je "migrirao", a FK (strani ključ) znači da je atribut dio stranog ključa (slika 4.3). Za odnos identiteta, strani ključ je uvijek uključen u primarni ključ djeteta.

entitet, za neidentificiranje nije uključen.

Slika 4.3 - Migracija atributa

4. korak Dodijelite veze glagolskom izrazu. Da biste to učinili, odaberite odnos klikom na njega pokazivačem miša, zatim pritisnite desnu tipku miša i odaberite stavku "Svojstva odnosa ..." u kontekstnom izborniku.

Opći prikaz prozora uređivača poveznica prikazan je na slici 4.4.

Baze podataka" href="/text/category/bazi_dannih/" rel="bookmark">baze podataka . U našem primjeru, budući da smo analizom predmetnog područja ustanovili da mjesto učenja ne može postojati odvojeno od razreda, postavite ovu ne - prekidač u položaj “No Nulls”, koji nameće uvjet da postojeća instanca radnog mjesta uvijek mora imati referencu na klasu kojoj pripada.

Označi « Definicija"(definicija).

Na ovoj stranici unosite definiciju odnosa. Tekst definicije odnosa, kao iu slučaju subjekta, ovisi o standardima koje je usvojilo poduzeće i trebao bi olakšati percepciju modela.

Kartica Ime uloge

Naziv uloge (rolename) je izborna karakteristika koja može

biti dodijeljen migrirajućem atributu primarnog ključa (slika 4.5).

https://pandia.ru/text/78/177/images/image006_79.gif" width="358" height="221 src=">

Slika 4.6 - Kontekstni izbornik dijagrama za prikaz migrirajućih atributa entiteta

Kartica RI Actions (Postavke referentnog integriteta)

Kartica je namijenjena za postavljanje parametara referentnog integriteta projekta

baza podataka koja se obrađuje (slika 4.7).

Tvrdnje o referentnom integritetu logičke su konstrukcije koje izražavaju poslovna pravila za korištenje podataka. Oni određuju koje radnje DBMS treba izvesti prilikom brisanja, umetanja ili promjene reda tablice (instance entiteta). Ovako definirane radnje mogu se kasnije koristiti u automatskom generiranju okidača koji održavaju integritet podataka.

Postoje sljedeće vrste radnji ili pravila definirane u logičkom modelu:

1 OGRANIČENJE - zabrana brisanja, umetanja ili izmjene instance entiteta

2 KASKADA - prilikom brisanja instance nadređenog entiteta, brisanje svih instanci podređenog entiteta koje se odnose na roditeljski entitet koji se briše.

3 POSTAVI NULL - kada se izbriše instanca roditeljskog entiteta, atributi stranog ključa svih instanci podređenog entiteta postavljaju se na NULL.

4 SET DEFAULT - isto kao u prethodnom slučaju, ali umjesto NULL vrijednosti dodjeljuje se zadana vrijednost.

5 NIŠTA - ništa se ne poduzima.

Slika 4.7 - Kartica "RI Actions" (Postavke referentnog integriteta)

Ova pravila su postavljena za umetanje, brisanje i modificiranje instance i nadređenih i podređenih entiteta. Dakle, svaka veza mora imati skup od šest pravila koja se unose u polja, objedinjenih općim naslovom "RI Akcije". Prilikom dodavanja veze dijagramu, ERwin prema zadanim postavkama postavlja skup pravila za njega, koja se mogu uređivati ​​u dijaloškom okviru "Svojstva modela" na kartici "RI Defaults" (slika 4.8), pozivajući

odabirom naredbe "Model" poslužitelja iz glavnog izbornika i, nadalje, pod-

Naredbe "Svojstva modela" (slika 4.9).

https://pandia.ru/text/78/177/images/image009_57.gif" width="227" height="289 src=">

Slika 4.9 - Redoslijed pozivanja dijaloškog okvira "Svojstva modela"

Zadana pravila dodijeljena poveznici mogu se promijeniti odabirom željene vrijednosti s padajućeg popisa (vidi sliku 4.8). Kada kliknete na gumb "Ponovo vezati" (ponovno dodijeliti), nove zadane postavke se prenose u trenutni način rada.

Del, ako jednostavno izađeš iz dijaloškog okvira bez ponovnog dodjeljivanja, tada će promijenjene postavke utjecati samo na nove modele.

Svaka vrsta veze ima, ovisno o vrsti radnje, svoj skup valjanih pravila, prikazanih u tablici 4.2.

Tablica 4.2 - Skup važećih pravila za različite vrste poveznica

radnje

Vrsta veze

Identifikacija

Neidentificirano

ruyuschaya (neidentificirajuće, Nulls

Neidentificirano

neidentificirajući (Non-Identifying, No

naya veza

(brisanje podređenog objekta)

CASCADE, NONE POSTAVLJENO NA NULL,

CASCADE, NONE POSTAVLJENO ZADANO

(umetnuti podređeni objekt)

CASCADE, NONE POSTAVLJENO NA NULL,

CASCADE, NONE POSTAVLJENO ZADANO

(promijeni podređeni objekt)

KASKADA, NIJE SET

NULL, POSTAVI DE - GREŠKA

KASKADA, N6NE garnitura

(brisanje nadređenog objekta)

KASKADA, NIJE SET

KASKADA, NIJE SET

(umetnuti roditeljski objekt)

CASCADE, NONE POSTAVLJENO NA NULL,

KASKADA. NONE POSTAVI ZADANO

(promijeni roditeljski objekt)

KASKADA, NIJE SET

KASKADA, NIJE SET


Zadane postavke za odnos "Razred - školsko mjesto" zabranjuju umetanje i izmjenu instance podređenog entiteta, kao i brisanje i modificiranje nadređenog entiteta. To znači da brisanje nije dopušteno.

ili mijenjanje razreda ako ima mjesta, kao i unos mjesta bez klase ili s referencom na nepostojeći razred. Time smo ispunili uvjet prema kojem učilište može postojati samo kao dio nastave.

UDP kartica (korisnički definirani parametri)

Kartica - UDP, kao i prethodni objekti dijagrama, omogućuje vam da dodijelite svoj vlastiti skup prilagođenih svojstava vezi.

Dakle, stvorili smo neidentifikacijski odnos između entiteta "Klasa" i

"Mjesto za trening" uz uvjet "Bez nulti". Očito, odnos istog tipa mora postojati između entiteta "Vrsta opreme" i "Postavka opreme", budući da dio opreme mora imati vrstu. Unesite ovaj odnos u dijagram slijedeći iste korake kao u prethodnom slučaju. Pozovite uređivač veza i promijenite glagolsku frazu u "opisuje", a ostale postavke veze ostavite nepromijenjene. Imajte na umu da je atribut "šifra vrste opreme" prebačen u sastav neključnih atributa entiteta "Mjesto učenja" (slika 4.10).

Slika 4.10 - Atribut "šifra vrste opreme" premješten je u sastav ne-ključnih atributa entiteta "Mjesto učenja"

Razmotrimo sada odnos između entiteta "Mjesto za obuku" i "Stavka opreme". Kako smo doznali tijekom istraživanja predmetnog područja, dijelovi opreme čine određeni fond komponenti, od kojih se neke ugrađuju na mjesta za obuku. Drugi dio komponenti može biti na zalihama, biti neispravan i čekati stavljanje izvan pogona itd., odnosno postojati odvojeno od mjesta za obuku. Dakle, entiteti "Mjesto za obuku" i "Oprema" ne ovise jedan o drugom i moraju biti povezani s neidentificirajućim odnosom.

Korak 5 Odaberite neidentifikacijski odnos s palete alata i dovedite ga u dijagram odabirom "Mjesto proučavanja" kao nadređenog entiteta, i

"Jedinica opreme" - dijete. U uređivaču veza promijenite glagolski izraz "roditelj-djetetu" u "sastoji se od". Odnos koji ne identificira ima dvije varijante - dopušta NULL vrijednosti (Null dopuštene) i ne dopušta (Nema nulti). Null Allowed varijanta je odabrana prema zadanim postavkama, ostavite ovo kako jest. Ova postavka znači da za primjer entiteta "Stavka opreme" polja stranog ključa mogu imati nultu vrijednost, tj.

nema naznake kopije "Mjesta za učenje". Dakle, dio opreme može postojati "sam od sebe".

Nakon uspostavljanja veza, dijagram na razini entiteta će izgledati ovako:

https://pandia.ru/text/78/177/images/image012_32.gif" width="556" height="327 src="> poveznice prikazane na slici 4.12.

Slika 4.12 - Slika poveznica u IDEF1X notaciji

Osim vrste veze, dijagram može prikazati i postavke referentne vrijednosti.

ravnost - da biste to učinili, odaberite stavku u kontekstnom izborniku grafikona

"Prikaz odnosa" i podstavka "Referentni integritet" ( Korak 6. ).

Alphabet" href="/text/category/alfavit/" rel="bookmark">abecedne grupe odvojene dvotočkom ":". Prvi znak označava radnju na koju se primjenjuje pravilo integriteta: D - brisanje, I - umetanje ( umetnuti), U - promijeniti (ažurirati).

Druga skupina označava pravilo: R - RESTRICT, C - CASCADE, SN - SET NULL, SD - SET DEFAULT. Dakle, sprječavanje brisanja označeno je s D:R, a postavljanje NULL na promjenu označeno je s U:SN. Oznake se stavljaju na roditeljski ili podređeni kraj veze, ovisno o tome na koji se entitet odnose. Kada su uključene postavke referentnog integriteta, dijagram će

izgleda kao što je prikazano na slici 4.14.

Slika 4.14 - ER dijagram s omogućenim postavkama referentnog integriteta

Dijagram sada definira jedno od područja objekata, od kojih smo identificirali četiri - materijalnu potporu procesa učenja. Pogledajmo druga područja objekata u kasnijim vježbama.

Korak 7 Na kartici Entity Layer, spremite model, na primjer, pod imenom

Njemački laboratorij_4_Petrov. er1.

Korak 8. Izvršite individualni zadatak kako biste utvrdili veze između

podatke u ERwinu za navedeno predmetno područje (vidi tablicu 3.4).

1. Rezultati koraka 1 - 7 nastavnog programa.

2. Rezultati individualnog zadatka.

test pitanja

1. Kako se razlikuju ovisni i nezavisni entiteti u ERwin dijagramu?

2. Koji se odnos između entiteta naziva neidentifikacijskim?

3. Što je fizički i logički model podataka?

4. Koji se odnos između entiteta naziva identificiranjem?

5. Objasnite značenje tvrdnje da je neki atribut „migrirao“?

6. Što znači simbol "FK" na ERwin dijagramu?

7. Koje su značajke uređivača poveznica?

8. Kakav je prikaz poveznica u IDEF1X notaciji?

9. Kako je oznaka referentnog integriteta u dijagramu

10. Koji su odnosi između entiteta korišteni prilikom izvođenja indiea

vizualni zadatak?

Stvaranje suvremenih informacijskih sustava vrlo je težak zadatak, za čije je rješenje potrebno korištenje posebnih tehnika i alata. Nije iznenađujuće da je u posljednje vrijeme među sistemskim analitičarima i programerima značajno povećan interes za CASE (Computer-Aided Software / System Engineering) - CASE tehnologije i alate koji vam omogućuju da sistematizirate i automatizirate sve faze razvoja softvera koliko god je to moguće. moguće.

Knjiga koja se nudi čitatelju praktičan je vodič za stvaranje informacijskih sustava korištenjem učinkovitih alata za analizu, dizajn i generiranje koda iz PLATINUM tehnologije - BPwin i ERwin. Sadrži i opis metoda strukturalne analize i projektiranja modela podataka u mjeri potrebnoj za praktični rad. Primjena metoda ilustrirana je primjerima.

Knjiga je napisana na temelju osobnog iskustva autora stečenog tijekom razvoja informacijskih sustava, držanja predavanja i praktične nastave o CASE-tehnologijama i CASE-alatima u Centru za obuku "Interface doo". Namijenjen je stručnjacima iz područja informacijske tehnologije: analitičarima sustava, voditeljima projekata, programerima - a može biti koristan i za studente preddiplomskih i diplomskih studija koji proučavaju osnove analize sustava i projektiranja informacijskih sustava.

Knjiga:

Odnos je logičan odnos između entiteta. Svaki odnos treba nazvati glagolom ili glagolskom frazom (Relationship Verb Phrases) (slika 2.20). Naziv odnosa izražava neko ograničenje ili poslovno pravilo i čini dijagram lakšim za čitanje, na primjer:

Svaki KLIJENT <размещает> NARUDŽBE;

Svaka narudžba <выполняется> ZAPOSLENIK.

Riža. 2.20. Ime veze - glagolske fraze odnosa

Veza pokazuje koje je točno narudžbe kupac poslao i koji zaposlenik ispunjava narudžbu. Prema zadanim postavkama, naziv veze nije prikazan na dijagramu. Za prikaz naziva koristite kontekstni izbornik koji se pojavljuje ako kliknete lijevom tipkom miša na bilo koje mjesto na dijagramu koje nije zauzeto objektima modela, odaberete stavku Opcije prikaza / Odnos i zatim omogućite opciju Glagolska fraza.

Na logičkoj razini možete postaviti identifikacijski odnos jedan-prema-više, odnos više-prema-više i jedan-prema-više ne-identifikacijski odnos (odnosno, ovo su gumbi s lijeva na desno u alatu paleta).

IDEF1X razlikuje ovisne i neovisne entitete. Vrsta entiteta određena je njegovim odnosom prema drugim entitetima. Identificirajući odnos uspostavlja se između neovisnih (roditeljski kraj odnosa) i ovisnih (djetetski kraj odnosa) entiteta. Kada se nacrta identifikacijski odnos, ERwin automatski pretvara podređeni entitet u ovisan entitet. Zavisni entitet predstavljen je pravokutnikom sa zaobljenim kutovima (entitet Narudžba na sl. 2.21). Instanca ovisnog entiteta definirana je samo kroz odnos prema roditeljskom entitetu, tj. u strukturi na sl. 2.21 Podaci o narudžbi ne mogu se unijeti i besmisleni su bez podataka o kupcu koji ih daje. Kada se uspostavi identifikacijski odnos, atributi primarnog ključa roditeljskog entiteta automatski se prenose na primarni ključ podređenog entiteta. Ova operacija dodavanja atributa podređenom entitetu prilikom kreiranja odnosa naziva se migracija atributa. U podređenom entitetu novi atributi su označeni kao strani ključ - (FK).

Riža. 2.21. Identificiranje odnosa između neovisne i zavisne tablice

Ubuduće, prilikom generiranja sheme baze podataka, atributi primarnog ključa bit će označeni kao NOT NULL, što znači da je nemoguće izvršiti unos u tablicu narudžbi bez podataka o broju kupca.

Kada se uspostavi neidentifikacijski odnos (slika 2.22), podređeni entitet ostaje neovisan, a atributi primarnog ključa roditeljskog entiteta migriraju na ne-ključne komponente roditeljskog entiteta. Neidentifikacijski odnos koristi se za povezivanje neovisnih entiteta.

Riža. 2.22. Odnos koji nije identificiran

Entitetska instanca Zaposlenik može postojati bez obzira na bilo koju instancu entiteta Odjel, tj. zaposlenik može raditi u organizaciji bez da bude naveden ni u jednom odjelu.

Identificirajući odnos prikazan je na dijagramu kao puna linija s podebljanom točkom na podređenom kraju odnosa (vidi sliku 2.21), a neidentifikacijski je isprekidana (slika 2.22).

Za stvaranje nove veze:

postavite pokazivač na željenu tipku u paleti alata (identificirajući ili neidentifikacijski odnos) i pritisnite lijevu tipku miša (slika 2.2);

kliknite prvo na nadređeni, a zatim na podređeni entitet.

Možete promijeniti oblik linije veze. Da biste to učinili, mišem morate uhvatiti željenu liniju veze i pomicati je s mjesta na mjesto dok linija ne počne izgledati bolje.

Gumb na paleti alata

Odgovara identifikacijskoj vezi, gumbu

Odnosi mnogo-prema-više i gumb

Odgovara neidentificirajućem odnosu.

Da biste uredili svojstva odnosa, desnom tipkom miša kliknite odnos i odaberite Uređivač odnosa iz kontekstnog izbornika.

Na kartici Općenito dijaloškog okvira koji se pojavi možete postaviti kapacitet, naziv i vrstu veze (slika 2.23).

Snaga komunikacije (kardinalnost) - koristi se za označavanje omjera broja instanci roditeljskog entiteta i broja instanci djeteta.

Postoje četiri vrste snage (slika 2.24):

opći slučaj, kada jedna instanca roditeljskog entiteta odgovara 0, 1 ili mnogim instancama podređenog entiteta, nije označena nikakvim simbolom;

simbol P označava slučaj kada jedna instanca roditeljskog entiteta odgovara 1 ili više instanci podređenog entiteta (nulta vrijednost je isključena);

simbol Z označava slučaj kada jedna instanca roditeljskog entiteta odgovara 0 ili 1 instanci podređenog entiteta (više vrijednosti je isključeno);

broj označava slučaj točnog podudaranja, kada jedna instanca roditeljskog entiteta odgovara unaprijed određenom broju instanci podređenog entiteta.

Riža. 2.23. Dijalog uređivača odnosa

Prema zadanim postavkama, simbol napajanja veze nije prikazan na dijagramu. Za prikaz naziva, u kontekstnom izborniku koji se pojavljuje ako kliknete lijevom tipkom miša na bilo koje mjesto na dijagramu koje nije zauzeto objektima modela, odaberite stavku Mogućnosti prikaza / Odnos i zatim omogućite opciju Kardinalnost.

Ime veze (glagolska fraza)- izraz koji karakterizira odnos između entiteta roditelja i djeteta. Za identifikacijski ili neidentifikacijski odnos jedan-prema-više, dovoljno je navesti ime koje karakterizira odnos od roditeljskog prema podređenom entitetu (Parent-to-Child). Za odnose više prema mnogo, potrebno je navesti i imena roditelj-dijete i dijete-roditelj.

Riža. 2.24. Oznake snage

Vrsta veze (identificirajuća/neidentificirajuća). Za neidentifikacijski odnos možete navesti obvezno (Nulls). U slučaju obveznog odnosa (bez nulti vrijednosti), prilikom generiranja sheme baze podataka, atribut stranog ključa će dobiti atribut NOT NULL, unatoč činjenici da strani ključ neće biti uključen u primarni ključ podređenog entiteta. U slučaju neobaveznog odnosa (dopuštene nule), strani ključ može biti NULL. Neobavezni neidentifikacijski odnos označen je prozirnim dijamantom na strani nadređenog entiteta (vidi sliku 2.22).

Riža. 2.25. Kartica Rolename/RI Actions dijaloškog okvira Relationship Editor

Na kartici Definicija možete dati potpuniju definiciju veze kako biste je mogli referirati u budućnosti.

Na kartici Rolename/RI Actions možete postaviti naziv uloge i pravila referentnog integriteta.

Naziv uloge (funkcionalni naziv) - to je sinonim za atribut stranog ključa, koji ukazuje na ulogu atributa u podređenom entitetu.

Riža. 2.26. Strani nazivi ključnih uloga

U primjeru prikazanom na sl. 2.26, u biti Zaposlenik vanjski ključ Broj odjela ima funkcionalni naziv "Where Works", koji ukazuje na ulogu ovog atributa u entitetu. Prema zadanim postavkama, na popisu atributa prikazuje se samo naziv uloge. Za prikaz punog naziva atributa (i funkcionalni naziv i naziv uloge), upotrijebite kontekstni izbornik koji se pojavljuje kada lijevom tipkom miša kliknete bilo gdje na dijagramu koje nije zauzeto objektima modela, odaberite stavku Opcije prikaza / entiteti i zatim omogućite Opcija Ime uloge / Atribut (sl. 2.25). Puni naziv prikazan je kao funkcionalni naziv i osnovni naziv, odvojeni točkom (vidi sliku 2.26).

Obavezno je koristiti nazive uloga kada su dva ili više atributa istog entiteta definirana u istom opsegu, tj. imaju isti opseg, ali različita značenja. Na sl. 2.27 entitet Prodaja valute sadrži podatke o činu mjenjača, u kojem su uključene dvije valute - prodana i kupljena. Podaci o valutama sadržani su u entitetu Valuta. Dakle, entiteti Prodaja valute i Valuta mora biti dvaput povezan i primarni ključ - Broj valute treba dvaput migrirati na entitet Valuta kao strani ključ. Potrebno je razlikovati ove atribute koji sadrže podatke o broju prodane i kupljene valute (imaju različito značenje), ali se odnose na isti entitet Valuta (imaju zajednički raspon). U primjeru na sl. 2.27 atributi su dobili imena uloga prodano i Kupljen.

Riža. 2.27. Slučaj obveznih imena uloga

Drugi primjer obavezne dodjele imena uloga su rekurzivne veze(ponekad se naziva "fish hook" - riblja udica), kada je isti entitet i roditelj i dijete u isto vrijeme. Prilikom definiranja rekurzivnog odnosa, atribut mora migrirati kao strani ključ na ne-ključne atribute istog entiteta. Atribut se ne može pojaviti dvaput u istom entitetu pod istim imenom, pa mu se mora dati naziv uloge. Na sl. 2.26 entitet Zaposlenik sadrži atribut primarnog ključa Broj osoblja. Podaci o menadžeru zaposlenika sadržani su u istom subjektu, budući da menadžer radi u istoj organizaciji. Da biste se referirali na menadžera zaposlenika, trebali biste stvoriti rekurzivni odnos (na slici 2.26 odnos vodi/izvještava) i dodijeliti naziv ulozi ("Upravitelj"). Imajte na umu da rekurzivni odnos može biti samo neidentifikacijski. Inače, strani ključ bi morao biti uključen u primarni ključ i dobiti znak NOT NULL prilikom generiranja sheme. To bi onemogućilo izgradnju hijerarhije – stablo subordinacije mora imati korijen – zaposlenik koji ne odgovara nikome unutar organizacije.

Komunikacija usmjerava/pokorava se na sl. 2.26 vam omogućuje pohranjivanje hijerarhije podređenosti zaposlenika u obliku stabla. Ova vrsta rekurzivnog odnosa naziva se hijerarhijska rekurzija i postavlja odnos kada vođa (instanca roditeljskog entiteta) može imati mnogo podređenih (instanci podređenog entiteta), ali podređeni ima samo jednog vođu (slika 2.28).

Hijerarhijska rekurzija Mrežna rekurzija


Riža. 2.28. Podređenost instanci entiteta u hijerarhijskoj i mrežnoj rekurziji

Druga vrsta rekurzije je mrežna rekurzija (mrežna rekurzija), kada vođa može imati mnogo podređenih i, obrnuto, podređeni može imati mnogo vođa. Mrežna rekurzija definira mrežu odnosa između roditeljskih i podređenih instanci entiteta. To je slučaj kada je entitet u odnosu mnogo-prema-više sam sa sobom. Da biste razriješili odnos mnogo-prema-više, trebate stvoriti novi entitet (odnosi mnogo-prema-više bit će detaljno razmotreni u nastavku).

Riža. 2.29. Primjer implementacije mrežne rekurzije

Na sl. 2.29 razmatra primjer implementacije mrežne rekurzije. Struktura modelira srodničke odnose između članova obitelji bilo koje složenosti. Atribut Vrsta veze može poprimiti značenja "otac-sin", "majka-kći", "djed-unuk", "svekrva-snaha", "tast" itd. Od odnos uvijek povezuje dvoje ljudi, iz suštine U odnosu na. entiteta rodbinski odnos uspostavljena su dva identifikacijska odnosa s nazivima uloga "Senior" i "Junior". Svaki član obitelji može biti povezan s bilo kojim drugim članom obitelji, štoviše, isti par srodnika može biti povezan različitim vrstama obiteljskih odnosa.

Ako atribut migrira više od jedne razine kao strani ključ, tada se puni naziv stranog ključa (ime uloge + naziv baze atributa) prikazuje na prvoj razini, a samo naziv uloge prikazuje se na drugoj ili više. Na sl. 2.30 prikazuje strukturu podataka koja sadrži entitet Tim, esencija Igrač, koji pohranjuje informacije o igračima svake momčadi i entitetu Cilj, koji sadrži informacije i golove koje je svaki igrač postigao. atribut stranog ključa Broj tima entiteta Igrač ima naziv uloge "U kojem je timu".

Riža. 2.30. Migracija naziva uloga

Na sljedećoj razini, u osnovi Cilj, prikazuje se samo naziv uloge odgovarajućeg atributa stranog ključa (U kojoj momčadi igra).

Pravila referentnog integriteta (RI) su logičke konstrukcije koje izražavaju poslovna pravila za korištenje podataka i pravila su za umetanje, zamjenu i brisanje. Prilikom generiranja sheme baze podataka na temelju opcija logičkog modela specificiranih na kartici Rolename/RI Actions, generirat će se pravila deklarativnog referentnog integriteta koja moraju biti propisana za svaki odnos i okidači koji osiguravaju referentni integritet. Okidači su programi koji se izvršavaju svaki put kada se izvrši naredba za umetanje, zamjenu ili brisanje (INSERT, UPDATE ili DELETE). Na sl. 2.30 postoji identifikacijski odnos između entiteta Tim i Igrač. Što se događa ako izbrišete tim? Entitetska instanca Igrač ne može postojati bez naredbe (atribut primarnog ključa U kojoj momčadi igra? Broj tima ne može uzeti vrijednost NULL), stoga morate ili zabraniti brisanje tima dok je u njemu naveden barem jedan igrač (da biste izbrisali tim, prvo morate izbrisati sve igrače), ili odmah izbrisati sve njegove igrače zajedno s timom. Takva pravila brisanja nazivaju se "ograničenje" i "kaskada" (Parent RESTRICT i Parent CASCADE, vidi sliku 2.25). Imajte na umu da entiteti Igrač i Cilj, zauzvrat, također su povezani identifikacijskom vezom i u slučaju uklanjanja kaskadom momčadi, svi igrači momčadi i svi golovi koje su postigli bit će uklonjeni. Izvršavanje naredbe za brisanje jednog retka zapravo može izbrisati tisuće redaka u bazi podataka, stoga biste trebali oprezno koristiti pravilo kaskadnog brisanja. U slučaju da je postavljeno pravilo ograničenja brisanja, pri pokušaju brisanja momčadi koja ima barem jednog igrača, RDBMS poslužitelj će vratiti grešku.

Na sl. 2.26 uspostavlja se izborni neidentifikacijski odnos između entiteta Odjel i Zaposlenik. Instanca entiteta Zaposlenik može postojati bez upućivanja na odjel (atribut stranog ključa Gdje on radi. Broj odjela može biti NULL). U ovom slučaju moguće je postaviti pravilo na nulu - SET NULL. Prilikom brisanja odjela, atribut stranog ključa entiteta Zaposlenik - Gdje radi? Broj odjela bit će NULL. To znači da prilikom brisanja odjela zaposlenik ostaje raditi u organizaciji bez dodjeljivanja u bilo koji odjel, a podaci o njemu se spremaju.

Mogu se postaviti još dva pravila za brisanje (ako ih DBMS podržava):

SET DEFAULT - kada se izbriše, atributu stranog ključa se dodjeljuje zadana vrijednost. Na primjer, kada se tim izbriše, igrači se mogu prebaciti u drugi tim.

NONE - vrijednost atributa stranog ključa se ne mijenja kada se izbriše. Zapis o igraču "visi u zraku", odnosno odnosi se na momčad koja više ne postoji. Ova situacija je tipična za "ravne" stolove. Na primjer, ako su podaci o igračima i timovima pohranjeni u .dbf datotekama, moguće je izbrisati unos tima, dok datoteka igrača "ne zna" da odgovarajuća momčad ne postoji. Stoga se na stolnim ili datotečnim sustavima, funkcionalnost koja provodi pravila referencijalnog integriteta implementira u klijentsku aplikaciju.

Pravila brisanja kontroliraju što se događa u bazi podataka kada se red izbriše. Slično, pravila umetanja i ažuriranja određuju što će se dogoditi s bazom podataka ako se redci promijene ili dodaju. Na primjer, možete postaviti pravilo koje vam omogućuje dodavanje novog tima samo ako je u njega upisan barem jedan igrač. Željeno ponašanje može se postići sljedećim radnjama:

Postavite snagu komunikacije između entiteta Tim i Igrač, jednako "Jedan ili više" - 1 ili više (tip P). Pretpostavlja se da je uspostavljen identifikacijski odnos.

Dodijelite radnju RI okidača "Parent Insert-CASCADE" tako da prilikom kreiranja novog retka u tablici Tim barem jedan red je automatski kreiran u podređenoj tablici Igrač.

Dodijelite RI-okidaču akciju "Parent Delete-CASCADE" odnosu tako da kada se red izbriše iz tablice Tim odgovarajući redak ili retke iz tablice Igrač također su uklonjeni.

ERwin automatski dodjeljuje svakom odnosu zadanu vrijednost referentnog integriteta prije nego što ga doda dijagramu. Zadani načini rada RI koje je dodijelio ERwin (prikazano u tablici 2.4) mogu se promijeniti u uređivaču zadanog referentnog integriteta, koji se poziva klikom na gumb RI Defaults u dijaloškom okviru Ciljni poslužitelj (izbornik Poslužitelj/Ciljni poslužitelj).

Tablica 2.4. ERwin nema zadanih RI vrijednosti i mogućih načina za svaku vrstu veze

Poveznica za identifikaciju Asocijacija koja ne identifikuje (dopuštene nule) Neidentifikacijski odnos (bez nulti) Kategorički odnos
Child Delete Mogući načini rada OGRANIČENA, KASKADNA, NIKAKVA RESTRICT, CASCADE, NONE, POSTAVI NULL, POSTAVI ZADANO OGRANIČENA, KASKADA,
NIJEDAN
Dijete Izbriši zadane načine rada NIJEDAN NIJEDAN NIJEDAN NIJEDAN
Dječji umetak Mogući načini rada OGRANIČENA, KASKADA, RESTRICT, CASCADE, NONE, POSTAVI ZADANO OGRANIČENA, KASKADA,
NIJEDAN NIJEDAN
Zadani načini umetanja djece OGRANIČITI POSTAVI NULL OGRANIČITI OGRANIČITI
Dječje ažuriranje Mogući načini OGRANIČENA, KASKADNA, NIKAKVA RESTRICT, CASCADE, NONE, POSTAVI NULL, POSTAVI ZADANO RESTRICT, CASCADE, NONE, POSTAVI ZADANO OGRANIČENA, KASKADNA, NIKAKVA
Zadani načini ažuriranja djece OGRANIČITI POSTAVI NULL OGRANIČITI OGRANIČITI
Mogući načini brisanja roditelja OGRANIČENA, KASKADNA, NIKAKVA RESTRICT, CASCADE, NONE, POSTAVI NULL, POSTAVI ZADANO RESTRICT, CASCADE, NONE, POSTAVI ZADANO OGRANIČENA, KASKADA,
NIJEDAN
Roditelj Izbriši zadane načine rada OGRANIČITI POSTAVI NULL OGRANIČITI KASKADA
Umetanje roditelja Mogući načini OGRANIČENA, KASKADNA, NIKAKVA RESTRICT, CASCADE, NONE, POSTAVI NULL, POSTAVI ZADANO RESTRICT, CASCADE, NONE, POSTAVI ZADANO OGRANIČENA, KASKADNA, NIKAKVA
Zadani načini roditeljskog umetanja NIJEDAN NIJEDAN NIJEDAN NIJEDAN
Mogući načini ažuriranja roditelja OGRANIČENA, KASKADNA, NIKAKVA RESTRICT, CASCADE, NONE, POSTAVI NULL, POSTAVI ZADANO RESTRICT, CASCADE, NONE, POSTAVI ZADANO OGRANIČENA, KASKADNA, NIKAKVA
Zadani načini ažuriranja roditelja OGRANIČITI POSTAVI NULL OGRANIČITI KASKADA

Odnos mnogo-prema-više moguće samo na razini logičkog modela podataka. Na sl. Slika 2.31 prikazuje primjer odnosa mnogo-prema-više na vrhu. Liječnik može vidjeti mnogo pacijenata, pacijenta može liječiti nekoliko liječnika. Takva veza je označena punom linijom s dvije točke na krajevima.

U prethodnim poglavljima razmatran je najčešći tip odnosa - identificiranje odnosa - i prikazan je kako ER

pobijeditivrši migraciju ključeva putem ovih veza.

U ovom poglavlju naučit ćete kako:

Stvorite i koristite neidentifikacijske, rekurzivne i podtipske odnose. Izvršite automatsku migraciju ključnih atributa s jednog entiteta na drugi. Spriječite pojavljivanje dupliciranih naziva atributa. Postavite načine nasljeđivanja atributa. Postavite redoslijed kojim se obrađuju nulte vrijednosti u entitetu podređenog odnosa. Uklonite odnose mnogo prema mnogo.

Upravljanje inozemnim ključevima

Prilikom izrade dijagrama, iako biste možda htjeli dodati ključne atribute entitetu kada ga kreirate, ER

pobijeditimože obaviti većinu ovog posla umjesto tebe ako mu dopustiš. Kada stvorite odnos između dva entiteta, ERpobijeditiautomatski migrira atribute ključa roditeljskog entiteta u podređeni entitet, gdje oni postaju strani ključevi. Jer hitnapobijeditipodržava automatsku migraciju ključeva, preporučujemo da dodate primarne ključeve neovisnom entitetu čim se stvori, ali ne brinite o ključevima za podređene entitete. Nakon što stvorite vezu i hitnupobijeditiautomatski će migrirati strane ključeve, vratiti se i dodati vlastiti ključevi za podređene entitete grafikona.

Kako bi se olakšao dizajn baze podataka, ER

pobijeditiomogućuje vam da postavite način rada jedinstvenog ključa, koji se može koristiti da vas upozori na stvaranje atributa koji se može automatski migrirati putem veze ili da vas spriječi u stvaranju takvih atributa. Također, ako izbrišete vezu, hitnapobijeditiautomatski uklanja odgovarajuće strane ključeve iz podređenih entiteta. Vidi poglavlje 11, Dokumentiranje pravila sec. "Osiguravanje jedinstvenosti naziva entiteta i atributa".

Kako stvoriti strane ključeve

1. Nacrtajte odnos između dva entiteta, ili između entiteta i samog sebe (rekurzivni odnos). Strani ključ se automatski migrira. Ne morate ništa učiniti!

Da biste vidjeli automatsku migraciju stranog ključa,

potrebno je postaviti način prikaza grafikona na Atribut prikaz. Morate već kreirati atribute primarnog ključ u nadređenom entitetu.

Kako vidjeti atribute stranog ključa

1. Desnom tipkom miša kliknite deblo veze, ući ćete u izbornik Relationship.

2. Dajte naredbu "Relationship" za ulazak u uređivač odnosa.

Određivanje načina nasljeđivanja atributa

pobijeditimigrira atribut primarnog ključa, tada prema zadanim postavkama strani ključ koji se pojavljuje u podređenom entitetu nasljeđuje ime, ali ne nasljeđuje definiciju atributa primarnog ključa. Ako želite da se definicija atributa primarnog ključa također migrira na podređeni entitet, trebate promijeniti načine nasljeđivanja - Opcija nasljeđivanja atributa - koji ERpobijeditipostavlja prema zadanim postavkama. Da biste promijenili način nasljeđivanja s obzirom na ključeve za migraciju, izdajte naredbu "Nasljeđivanje atributa..." iz izbornika Opcija. Ući ćete u dijaloški okvir Mogućnost nasljeđivanja atributa.

U ovom dijaloškom okviru mogu se postaviti tri načina rada. Zadani način rada je "Bez nasljeđivanja" i možete ga promijeniti u "Potpuno nasljeđivanje" ili "Ograničeno nasljeđivanje" klikom na odgovarajući gumb, a zatim "U redu" da biste spremili novi način.

Kako postaviti način nasljeđivanja atributa

1. Dajte naredbu "Nasljeđivanje atributa..." iz izbornika Opcija.

2. Kliknite jedan od gumba u prozoru "Nasljeđivanje definicija primarnog ključa" da biste postavili način nasljeđivanja atributa koji vam je potreban:

"Potpuno nasljeđivanje" - definicije atributa primarnog ključa se migriraju na strani ključ za sve nove i već stvorene odnose u trenutnom dijagramu.

"Ograničeno nasljeđivanje" - definicije atributa primarnog ključa se migriraju na strani ključ za sve nove odnose, ali to se ne odnosi na već stvorene odnose u trenutnom dijagramu.

"Bez nasljeđivanja" - Migracija definicija atributa je onemogućena za sve veze u trenutnom dijagramu. Ovo je zadani način rada.

Postavljanje neidentifikacijskih odnosa

Poveznica za identifikaciju

naziva se odnosom koji dodaje identitet podređenom entitetu migracijom ključeva roditeljskog entiteta u područje atributa ključa djeteta i tako stvara podređeni entitet ovisni od roditelja u smislu njihovog identiteta. Na primjer, kada je atribut film-otupio ER migrira iz entiteta MOVIE u MOVIE-COPY u dijagramu MOVIES.ER1, tada svaka instanca MOVIE-COPY također ovisi ofilm-otupio Hitna pomoć i od film-copy-otupioER koji ga jedinstveno definiraju (ni jedan od ova dva atributa sam po sebi ne može jedinstveno identificirati određenu kopiju filma).

Također možete postaviti takav odnos koji ne čini podređeni entitet ovisnim o roditelju. Ova vrsta veze se zove neidentificirajuća veza. U hitnoj

pobijedititakav odnos je označen isprekidanom linijom s debelom točkom na kraju koja odgovara odnosu djeteta. S neidentificirajućim odnosom, atributi primarnog ključa roditeljskog entiteta migriraju u podatkovno područje (područje bez ključa) koje se nalazi ispod crte u podređenom entitetu. Ako atributi koji su migrirali u neključno područje podređenog entiteta nisu potrebni u tom entitetu, tada se odnos naziva izborni neidentifikacijski odnos, što implicira da podređeni entitet ne treba migrirane atribute da bi ga identificirao i da može postojati bez tih atributa. U hitnojpobijeditiizborni neidentifikacijski odnos označen je točkastom linijom s podebljanom točkom na jednom kraju (dijete) i dijamantom na drugom (roditelj).

Slika ispod pokazuje kako su prikazani u ER

pobijeditiidentifikacijske, neidentificirajuće i neobavezne neidentifikacijske odnose, te sažima razlike između tih odnosa.

Ako je odnos već stvoren na dijagramu, tada možete promijeniti njegovu vrstu u uređivaču odnosa.

Kako promijeniti vrstu veze

1. Odaberite vezu koju želite promijeniti. Postavite pokazivač na liniju veze i desnom tipkom miša uđite u skočni izbornik uređivača.

2. Dajte naredbu "Relationship" na izborniku Editor za ulazak u uređivač odnosa.

3. Kliknite na željeni gumb u prozoru Vrsta odnosa (Identificiranje - identificiranje, Neidentificiranje - neidentificiranje).

4. Kliknite "U redu" da biste unijeli promjene. ER

pobijeditimijenja liniju veze na dijagramu prema novom tipu.

Rekurzivna komunikacija u

ER pobjedi se automatski dodjeljuje vrsta Ne-identificirajući. Ne može se promijeniti.

Dopustiti ili ne dopustiti null vrijednosti?

Kada nacrtate neidentifikacijski odnos, trebate odlučiti mogu li atributi stranog ključa naslijeđeni od nadređenog biti NULL ili ne. Prema zadanim postavkama, odnos koji ne identificira je postavljen na "Null Allowed", što znači da podređeni entitet može postojati bez roditelja, a odnos se naziva izbornim. "Bez nulti" znači to postojanje podređenog entiteta ovisi o roditelju, a veza se zove obvezno. U slučaju Nulls Allowed odnosa na roditeljskom kraju neidentificirajućeg ER odnosa

pobijeditistavlja znak - romb.

Jedna od glavnih razlika između identifikacijskog i neidentificirajućeg odnosa je da samo oni strani ključevi koji migriraju kroz neidentifikacijski odnos mogu biti null.

Pogledajte vodič za metode hitne pomoći

Vodič za metode win, Pogl.3, "Pregled jezika", odd. "Identificirajući i neidentifikacijski odnosi".

Zadana postavka za asocijaciju koja ne identificira je postavljena na

Način rada "Null dopuštene", tj. NULL vrijednosti za strane ključeve

1. Studijska pitanja

  1. Razvoj relacijskog modela podataka uERwin.
  2. Normalizacija fizičkog modela podataka uERwin.

2. Plan lekcije

  1. Kontrola znanja testiranjem (test ISE005).
  2. Uvoz entiteta u ERwin.
  3. Razvoj logičkih i fizičkih modela podataka u ERwin koristeći metodologiju IDEF1X.
  4. Normalizacija fizičkog modela podataka u erwin.
  1. Uvezite entitete u ERpobijediti, koristeći datoteku Podaci _IS_Name. bpx, te na temelju dobivenog skupa entiteta razviti logički model podataka.

Komentar: Ako su nazivi entiteta i atributa izrađeni ćirilicom (na ruskom), trebali bi se prepisati latiničnim slovima.

  1. Izradite logičke i fizičke modele podataka pomoću alata erwin.

  2. u svojoj mapi ISE.
  3. Normalizaciju fizičkog modela treba provesti rješavanjem odnosa MNOGO-PREMA-MNOGO pomoću gumba Mnogi prema mnogo transformirati alatnoj traci ER pobijeditiTransformiraj alatnu traku.
  4. Spremite rezultate rada u datoteku
    Data_model_IS_Name_IDEF1X.er1 u svojoj mapi ISE.

Dat je PRIMJER logičkog modela, kao i normaliziranog fizičkog modela podataka, izrađenog u IDEF1X tehnologiji.

4. Tehnološki proces izvršavanja zadataka

4.1. Tehnološki proces izrade modela podataka

4.1.1. Metodologija izrade modela (IDEF1X metodologija)

Metodologija IDEF1X koristi alat CASE ERwin izgraditi logičke i fizičke modele podataka informacijskog sustava.

ERwin ima jednostavno i razumljivo korisničko sučelje za izgradnju logičkih i fizičkih modela podataka koje sustav obrađuje. NA logično modela, dopušteno je kreiranje odnosa MNOGO-TO-MNOGO između entiteta i naziv atributa ( Naziv atributa) bit će naziv atributa u logično model i naziv stupca ( naziv stupca), ako je dano, bit će naziv atributa u fizički modeli.

U bilo kojem od ovih modela možete automatski pretvoriti odnos MNOGO-PREMA-MNOGO u odnos JEDAN-PREMA-MNOGO.

Kao rezultat toga, stvorit će se podređena tablica koja razveže odnos MNOGO-PREMA-MNOGO. Ova tablica sadržavat će ugrađeni složeni ključ (FK) s atributima ugrađenim iz glavnih tablica i njihovim odgovarajućim tipovima podataka. Ako trebate promijeniti vrstu podataka, to morate učiniti ručno.

Proces izrade modela uključuje sljedeće korake:

  1. Iz prozora možete stvoriti novi model Računalni suradnici ERwin ili kliknite gumb za kreiranje modela. U oba slučaja prikazat će se dijaloški okvir. Izradi model - Odaberite predložak (slika 5.1).
  1. U prozoru Izradi model - Odaberite predložak trebate odabrati opciju koja određuje mogućnost stvaranja modela podataka određene vrste: Logično(može se kreirati samo logički model), Fizički(može se kreirati samo fizički model) ili Logički/fizički(možete kreirati oba modela paralelno: i logično , i Fizički). Da biste imali više opcija, preporučljivo je odabrati posljednju opciju − Logički/fizički .
  2. NA grupa Ciljna baza podataka s popisa priloženog u polju baza podataka, odaberite sustav upravljanja bazom podataka (DBMS) – SQL Server, i na terenu verzijaželjena verzija - 2000 .
  3. U prozoru koji se pojavi < Main Subject Area >/Prikaz] s popisa odaberite vrstu modela za izradu: Logično ili Fizički(slika 5.2).

Na alatnoj traci ERwin Toolbox sadrži gumbe koji vam omogućuju dodavanje u podatkovni model i uređivanje njegovih pojedinačnih fragmenata:

Izaberi(uređivanje odabranog objekta modela),

entiteta(dodavanje entiteta),

Odnos mnogo-prema-više(odnos mnogo-prema-više),

Identificiranje odnosa (link za identifikaciju),

neidentifikacijski odnos (neidentifikacijski odnos).

4.1.2. Tehnološki proces izrade logičkog modela podataka

U procesu izrade modela, entiteti se mogu uvesti uvozom iz rječnika entiteta koji je razvijen u BPwin, ili stvaranjem pomoću gumba entiteta na alatnoj traci.

Uvoz entiteta u ERwin

Opaske

  • Entiteti se mogu izvoziti i uvoziti samo jednom.
  • Nakon uvoza entiteta iz BPwin zastave Razmjena s ERwin i gumbi Ažuriraj i Izbrisati u dijaloškom okviru Urednik rječnika entiteta i atributa postati zamračen. To je zato što ne možete promijeniti entitete i atribute koji BPwin dionice c erwin.

  1. Stvaranje novih entiteta.
    • Kliknite gumb za dodavanje entiteta entiteta i kliknite unutar prozora modela.
    • Fit naziv entiteta i pritisnite Unesi, zatim uđi naziv atributa entiteta.
    • Za odabir željenog fonta izvršite p.p. 1.9-1.12.
  2. Dodavanje novih atributa.
    • U kontekstnom izborniku entiteta odaberite naredbu Atributi… a u prozoru koji se pojavi (slika 5.4) pritisnite tipku novi.
    • U prozoru Novi atributi(slika 5.6) u polje unesite naziv atributa Naziv atributa .
    • Postavite vrstu podataka svakog atributa za svaki entitet: Tekst (niz), numerički (broj), datum/vrijeme (datum i vrijeme) ili polje podsjetnika (B inarniL argeOb .ject, Blob) (sl. 5.5 ili sl. 5.6) .
    • Definirajte ključne atribute tako da potvrdite okvir Glavni ključ u prozoru Atributi(slika 5.5) nakon odabira željenog atributa u polju atribut.

Uspostavljanje odnosa između entiteta

  1. Uspostavljanje odnosa MNOGO-PREMA-MNOGO:
    • Na alatnoj traci Erwin Toolbox pritisni gumb Odnos mnogo-prema-više .
    • Uzastopno kliknite lijevom tipkom miša na nazive entiteta između kojih želite stvoriti odnos (slika 5.7).

  1. Montaža identificiranje ONE-PREMA-Mnogo veza:
    • Na alatnoj traci Erwin Toolbox pritisni gumb identifikacijski odnos.
    • ključ ključni atribut podređeni subjekt (FK) koji se nalazi na strani MNOGO (slika 5.8).
    • U podređenom entitetu formira se složeni ključ.

  1. Montaža neidentificirajući ONE-PREMA-Mnogo veza:
    • Na alatnoj traci Erwin Toolbox pritisni gumb neidentifikacijski odnos .
    • Uzastopno kliknite lijevom tipkom miša na nazive entiteta između kojih želite stvoriti odnos. Rezultat stvaranja veze bit će implementacija ključ atribut glavnog entiteta kao ne-ključni atribut podređeni subjekt (FK) koji se nalazi na strani MUCH (slika 5.9).

4.1.3. Tehnološki proces izrade fizičkog modela podataka

Rezultat izvršenja naredbe bit će automatski kreirani fizički model u kojem će umjesto entiteta biti prikazane tablice, a umjesto atributa entiteta polja tablica.

  1. U fizičkom modelu provjerite vrste podataka i odnose uspostavljene između tablica.

4.2. Tehnološki proces normalizacije fizičkog modela podataka (IDEF1X metodologija)

  1. U prozoru Računalni suradnici ERwin - )