Isprobajte!
Što je odnos više-prema-više?
Odnosi više-prema-više najčešći su odnosi između tablica. Oni pružaju ključne informacije, kao što su korisnici s kojima su se vaši prodavači kontaktirali i koji se proizvodi nalaze u narudžbama klijenata.
Odnos više-prema-više postoji kada jedna ili više stavki u jednoj tablici može imati odnos s jednom ili više stavki u drugoj tablici. Na primjer:
-
Tablica Narudžba sadrži narudžbe koje je naručilo više klijenata (koji su navedeni u tablici Kupci), a klijent može naručiti više od jedne narudžbe.
-
Tablica Proizvodi sadrži pojedinačne proizvode koje prodajete, koji su dio mnogih narudžbi u tablici Narudžba.
-
Jedna narudžba može obuhvaćati jednu instancu (ili više instanci) određenog proizvoda i/ili jednu instancu (ili više instanci) više proizvoda.
Na primjer, broj narudžbe 1012 kupca Elizabeth Andersen može sadržavati po jedan od proizvoda 12 i 15 i pet proizvoda 30.
Stvaranje odnosa više-prema-više
Odnose više-prema-više stvarate drugačije od odnosa 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 da biste povezali ostala dva. Ta se nova tablica naziva posredna tablica (ili ponekad tablica za povezivanje ili spajanje ).
U prethodno opisanom scenariju stvarate tablicu Detalji narudžbe sa zapisima koji za svaku stavku bilo kojim redoslijedom sadrže ID iz tablice Narudžba i ID iz tablice Proizvodi. Primarni ključ za tu tablicu stvarate pomoću kombiniranih tipki iz dviju tablica.
U našem scenariju broj narudžbe Elizabeth Andersen 1012 sastoji se od proizvoda 12, 15 i 30. To znači da unosi u detaljima narudžbe izgledaju ovako:
ID narudžbe |
ID proizvoda |
---|---|
1012 |
12 |
1012 |
15 |
1012 |
30 |
Elizabeth je naručila po jedan od proizvoda 12 i 15, i pet proizvoda 30. Ne možemo dodati još jedan redak s brojevima 1012 i 30 jer ID narudžbe i ID proizvoda č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 posredne tablice
-
Odaberite Stvori > tablicu.
-
Odaberite Spremi .
-
U polje Naziv tablice unesite opisni naslov. Da biste naznačili njezinu svrhu, u naziv tablice uvrstite sijecišta ili međurazmjesne vrijednosti.
Stvaranje polja u posrednu tablicu
Kao prvi stupac tablice Access automatski dodaje polje ID- a. Promijenite to polje tako da odgovara ID-u prve tablice u odnosu više-prema-više. Ako je prva tablica, primjerice, tablica Narudžbe naziva ID narudžbe, a njegov primarni ključ broj, promijenite naziv polja ID u novoj tablici u ID narudžbe, a za vrstu podataka koristite Broj.
-
U prikazu podatkovne tablice odaberite naslov 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, npr. 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, koji je već odabran, upišite naziv polja primarnog ključa iz druge tablice, kao što je ID proizvoda.
-
Ako morate pratiti sve druge informacije o tim zapisima, kao što je količina stavki, stvorite dodatna polja.
Kombiniranje primarnih polja ID-a
Sada kada imate polja koja sadrže ID-ove iz dviju tablica koje želite povezati, stvorite primarni ključ na temelju tih ID-ova u posrednu tablicu.
-
U prikazu dizajna otvorite posrednu tablicu.
-
Odaberite oba retka koji sadrže ID-ove. (Ako ste slijedili prethodni postupak, ovo su prva dva retka.)
-
Odaberite Dizajn tablice > primarni ključ.
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 podudarnog 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: