Poskusite!
Kaj je odnos »mnogo proti mnogo«?
Relacije »mnogo proti mnogo« so najpogosteje uporabljene relacije tabele. Zagotavljajo ključne informacije, na primer, s katerimi strankami so se stiki z vašimi prodajalci in kateri izdelki so v naročilih strank.
Relacija »mnogo proti mnogo« obstaja, kadar je eden ali več elementov v eni tabeli lahko v relaciji z enim ali več elementi v drugi tabeli. Primer:
-
V tabeli »Naročilo« so naročila, ki jih je oddalo več strank (ki so navedene v tabeli »Stranke«), stranka pa lahko oddajo več naročil.
-
V tabeli »Izdelki« so posamezni izdelki, ki jih prodajate, ki so del številnih naročil v tabeli »Naročilo«.
-
Eno naročilo lahko vključuje en primerek (ali več primerkov) določenega izdelka in/ali en primerek (ali več primerkov) več izdelkov.
Naročilo stranke Elizabeth Andersen številka 1012 lahko na primer vsebuje enega od izdelkov 12 in 15 ter pet izdelkov 30.
Ustvarjanje relacij »mnogo proti mnogo«
Relacije »mnogo proti mnogo« ustvarite drugače kot relacije »ena proti ena« ali »ena proti mnogo«. Za te relacije preprosto povežete ustrezna polja s črto. Če želite ustvariti relacije »mnogo proti mnogo«, morate ustvariti novo tabelo, da povežete drugi dve. Ta nova tabela se imenuje vmesna tabela (ali včasih povezovalna alistična tabela).
V prej opisanem scenariju ustvarite tabelo »Podrobnosti naročila« z zapisi, ki za vsak element v katerem koli naročilu vsebujejo ID iz tabele »Naročilo« in ID iz tabele »Izdelki«. Primarni ključ za to tabelo ustvarite s kombiniranim ključem iz obeh tabel.
V našem primeru je naročilo Elizabeth Andersen številka 1012 sestavljeno iz izdelkov 12, 15 in 30. To pomeni, da so vnosi podrobnosti naročila videti tako:
ID naročila |
ID izdelka |
---|---|
1012 |
12 |
1012 |
15 |
1012 |
30 |
Elizabeth je naročila vsakega od izdelkov 12 in 15, pet izdelkov pa 30. Z različicama 1012 in 30 ne moremo dodati druge vrstice, saj ID naročila in ID izdelka skupaj ustvarita primarni ključ, primarni ključi pa morajo biti enolični . Namesto tega v tabelo »Podrobnosti o naročilu« dodamo polje »Količina«.
ID naročila |
ID izdelka |
Količina |
---|---|---|
1012 |
12 |
1 |
1012 |
15 |
1 |
1012 |
30 |
5 |
Ustvarjanje vmesne tabele
-
Izberite Ustvari > tabelo.
-
Izberite Shrani .
-
V polje Ime tabele vnesite opisen naslov. Če želite označiti njen namen, v ime tabele vključite stičišče ali vmesniško ime.
Ustvarjanje polj v vmesni tabeli
Kot prvi stolpec tabele Access samodejno doda polje »ID«. To polje spremenite tako, da se ujema z ID-jem prve tabele v relaciji »mnogo proti mnogo«. Če je na primer prva tabela tabela »Naročila«, ki se imenuje »ID naročila«, njen primarni ključ pa je številka, spremenite ime polja »ID« v novi tabeli v »ID naročila« in za podatkovni tip uporabite » Številka«.
-
V pogledu podatkovnega lista izberite glavo stolpca ID in vnesite novo ime polja.
-
Izberite polje, ki ste ga pravkar preimenovali.
-
Na zavihku Polja tabele v razdelku Podatkovni tip izberite podatkovni tip, ki se bo ujemal s poljem v izvirni tabeli, na primer Število aliKratko besedilo.
-
Izberite Kliknite, če želite dodati, nato pa izberite podatkovni tip, ki se ujema s primarnim ključem v drugi tabeli. V glavo stolpca, ki je že izbrana, vnesite ime polja s primarnim ključem iz druge tabele, kot je ID izdelka.
-
Če želite slediti drugim informacijam o teh zapisih, na primer količini artiklov, ustvarite dodatna polja.
Združevanje polj s primarnim ID-jem
Zdaj, ko imate polja z ID-ji iz dveh tabel, ki jih želite povezati, ustvarite primarni ključ na podlagi teh ID-jev v vmesni tabeli.
-
V pogledu načrta odprite vmesno tabelo.
-
Izberite obe vrstici, ki vsebuje ID-je. (Če ste upoštevali prejšnji postopek, sta to prvi dve vrstici.)
-
Izberite Načrt tabele > primarni ključ.
Ikone tipk so prikazane ob obeh poljih z ID-jem.
Povezovanje treh tabel za ustvarjanje relacij »mnogo proti mnogo«
Če želite dokončati relacijo »mnogo proti mnogo«, ustvarite relacijo »ena proti mnogo« med poljem s primarnim ključem v vsaki tabeli in ujemajočim se poljem v vmesni tabeli. Če želite več informacij o tem, kako to naredite, glejte Uvod v relacije tabele.
Ko končate, bi morali biti odnosi videti tako: