Isprobajte!
Što je odnos više-prema-više?
Odnosi više-prema-više najčešće su korišteni odnosi između tablica. Pružaju ključne informacije, primjerice s kojim su se kupcima vaši prodavači obratili i koji su proizvodi u narudžbama.
Odnos više-prema-više postoji kada jedna ili više stavki u jednoj tablici imaju odnos s jednom ili više stavki u drugoj tablici. Na primjer:
- Tablica Narudžba sadrži narudžbe koje je postavilo više kupaca (koji su navedeni u tablici Kupci), a kupac može postaviti više narudžbi.
- Tablica Proizvodi sadrži pojedinačne proizvode koje prodajete, a koji su dio mnogih narudžbi u tablici Narudžbe.
- Jedna narudžba može sadržavati jednu instancu (ili više instanci) određenog proizvoda i/ili jednu instancu (ili više instanci) više proizvoda.
Na primjer, narudžba kupca Elizabeth Andersen broj 1012 može sadržavati po jedan proizvod 12 i 15 te pet proizvoda proizvoda 30.
Stvaranje odnosa više-prema-više
Odnose više-prema-više stvarate drugačije nego odnose jedan-prema-jedan ili jedan-prema-više. Za te odnose jednostavno povežite odgovarajuća polja crtom. Da biste stvorili odnose više-prema-više, morate stvoriti novu tablicu koja će povezati preostala dva. Ta se nova tablica naziva posredna tablica (ili ponekad tablica povezivanja ili tablice stjecanja ).
U prethodno opisanom scenariju stvarate tablicu Detalji narudžbe sa zapisima koji za svaku stavku u bilo kojoj narudžbi sadrže ID iz tablice Narudžba i ID iz tablice Proizvodi. Za tu tablicu stvarate primarni ključ pomoću kombiniranih ključeva iz dviju tablica.
U našem scenariju, broj narudžbe 1012 Elizabeth Andersen sastoji se od proizvoda 12, 15 i 30. To znači da naši unosi u odjeljku Detalji narudžbe izgledaju ovako:
| ID narudžbe | ID proizvoda |
|---|---|
| 1012 | 12 |
| 1012 | 15 |
| 1012 | 30 |
Elizabeth je naručila po jedan proizvod 12 i 15 te pet proizvoda 30. Ne možemo dodati još jedan redak s brojevima 1012 i 30 jer ID narudžbe i ID proizvoda zajedno čine naš primarni ključ, a primarni ključevi moraju biti jedinstveni. Umjesto toga u tablicu Detalji narudžbe dodajemo polje Količina.
| ID narudžbe | ID proizvoda | Količina |
|---|---|---|
| 1012 | 12 | 1 |
| 1012 | 15 | 1 |
| 1012 | 30 | 5 |
Stvaranje međutablice
- Odaberite Stvori>tablicu.
- Odaberite Spremi,

- U polje Naziv tablice unesite opisni naslov. Da biste naznačili njezinu svrhu, u njezin naziv možete uvrstiti spoj ili međured.
Stvaranje polja u posrednoj tablici
Kao prvi stupac tablice Access automatski dodaje ID polje. Promijenite to polje tako da odgovara ID-u prve tablice u odnosu više-prema-više. Ako je, primjerice, prva tablica tablica Narudžbe koja se zove ID narudžbe, a primarni je ključ broj, promijenite naziv polja ID-a u novoj tablici u ID narudžbe, a zatim kao vrstu podataka koristite Broj.
- U prikazu podatkovne tablice odaberite zaglavlje stupca ID, a zatim upišite novi naziv polja.
- Odaberite polje koje ste upravo preimenovali.
- Na kartici Polja tablice u odjeljku Vrsta podataka odaberite vrstu podataka koja odgovara polju u izvornoj tablici, primjerice Broj ili Kratki tekst.
- Odaberite Kliknite da biste dodali, a zatim odaberite vrstu podataka koja odgovara primarnom ključu u drugoj tablici. U zaglavlje stupca, koje je već odabrano, upišite naziv polja primarnog ključa iz druge tablice, kao što je ID proizvoda.
- Ako morate pratiti bilo kakve druge podatke o tim zapisima, kao što je količina artikala, stvorite dodatna polja.
Kombiniranje polja primarnog ID-ja
Sada kada imate polja koja sadrže ID-ove iz dviju tablica koje želite povezati, na temelju tih ID-ova stvorite primarni ključ u posrednoj tablici.
- U prikazu dizajna otvorite posrednu tablicu.
- Odaberite oba retka koja sadrže ID-ove. (Ako ste primijenili prethodni postupak, ovo su prva dva retka.)
- Odaberiteprimarni ključza dizajn> tablice.
Ikone tipki prikazuju se pokraj oba polja ID-a.
Povežite tri tablice da biste stvorili odnos više-prema-više
Da biste dovršili odnos više-prema-više, stvorite odnos jedan-prema-više između polja primarnog ključa u svakoj tablici i odgovarajućeg polja u posrednoj tablici. Detalje o tome kako to učiniti potražite u članku Početak rada s odnosima između tablica.
Kada završite, odnosi bi trebali izgledati ovako nekako: