
Proovige järele!
Mis on mitmele seos?
Mitu-mitmele seosed on kõige sagedamini kasutatavad tabeliseosed. Need annavad olulist teavet, näiteks seda, milliste klientidega teie müügiesindajad on ühendust võtnud ja millised tooted on klienditellimustel.
Mitu-mitmele-seos on olemas siis, kui ühe tabeli üks või mitu üksust võivad olla seotud mõne teise tabeli üksusega. Näiteks:
-
Tabel Tellimus sisaldab tellimusi, mille on tellinud mitu klienti (kes on loetletud tabelis Kliendid) ja klient võib esitada mitu tellimust.
-
Tabel Tooted sisaldab üksikuid tooteid, mida müüte, mis on osa paljudest tellimustest tabelis Tellimus.
-
Üks tellimus võib sisaldada ühe kindla toote eksemplari (või mitut eksemplari) ja/või ühte (või mitut eksemplari) mitut toodet.
Näiteks võib kliendi Elizabeth Anderseni tellimuse number 1012 sisaldada ühte tootest 12 ja 15 ning viit toodet 30.
Mitu-mitmele seoste loomine
Mitmele seosele saate luua erinevalt kui üks-ühele või üks-mitmele. Nende seoste korral saate lihtsalt ühendada sobivad väljad joonega. Mitmele seose loomiseks peate looma uue tabeli, et ühendada ülejäänud kaks seost. Seda uut tabelit nimetatakse vahepealseks tabeliks (või mõnikord linkimis- või sõlmtabeliks).
Ülalkirjeldatud stsenaariumi korral loote tabeli Tellimuse üksikasjad, kus on kirjed, mis sisaldavad iga antud tellimuse üksuse kohta tabeli Tellimus ID-d ja tabeli Tooted ID-d. Selle tabeli jaoks saate luua primaarvõtme, kasutades kahe tabeli kombineeritud klahve.
Meie stsenaariumis koosneb Elizabeth Anderseni tellimuse number 1012 toodetest 12, 15 ja 30. See tähendab, et meie tellimuse üksikasjade kirjed näevad välja järgmised.
Tellimuse ID |
Toote ID |
---|---|
1012 |
12 |
1012 |
15 |
1012 |
30 |
Elizabeth tellis ühe tootest 12 ja 15 ning viis toodet 30. Me ei saa lisada uut rida arvudega 1012 ja 30, kuna tellimuse ID ja toote ID koosnesid meie primaarvõtmest ja primaarvõtmed peavad olema kordumatud. Selle asemel lisame tabelisse Tellimuse üksikasjad välja Kogus.
Tellimuse ID |
Toote ID |
Quantity |
---|---|---|
1012 |
12 |
1 |
1012 |
15 |
1 |
1012 |
30 |
5 |
Vahetabeli loomine
-
Valige Loo > Tabel.
-
Valige Salvesta
.
-
Sisestage väljale Tabelinimi kirjeldav pealkiri. Selle otstarbe tähistamiseks võite soovida lisada tabeli nimesse ristmikuvõi vahepunkti.
Vahetabelis väljade loomine
Esimese tabeliveeruna lisab Access automaatselt ID-välja. Muutke seda välja nii, et see vastaks teie mitmele seose esimese tabeli ID-le. Näiteks kui esimene tabel on tabel Tellimused, mida nimetatakse tellimuse ID-ks ja selle primaarvõti on arv, muutke uue tabeli välja ID nimi väärtuseks Tellimuse ID ja kasutage andmetüübi puhul arvu .
-
Valige andmelehevaatesveerupäis ID ja tippige seejärel välja uus nimi.
-
Valige äsja ümber nimetatud väli.
-
Valige menüü Väljadjaotises Andmetüüpandmetüüp, et see vastaks algse tabeli väljale (nt Arv või Lühitekst).
-
Valige Lisa jaseejärel valige andmetüüp, mis vastab teise tabeli primaarvõtmele. Tippige juba valitud veerupäisesse teise tabeli primaarvõtmevälja nimi (nt Toote ID).
-
Kui teil on vaja jälgida muud teavet nende kirjete kohta (nt kaubakogus), looge täiendavaid välju.
Primaarse ID väljade kombineerimine
Nüüd, kui teil on väljad, mis sisaldavad kahe tabeli ID-sid, mida soovite ühendada, looge vahepealses tabelis nende ID-de põhjal primaarvõti.
-
Avage kujundusvaatesvahetabel.
-
Valige mõlemad read, mis sisaldavad ID-sid. (Kui järgisite varasemat protseduuri, on need kaks esimest rida.)
-
Valige Kujundus > Primaarvõti.
Mõlema ID-välja kõrval kuvatakse klahviikoonid.
Ühendus kolme tabeli loomine mitmele seose loomiseks
Mitmele seose lõpuleviimiseks looge üks-mitmele seos iga tabeli primaarvõtmevälja ja vahetabeli vastava välja vahel. Lisateavet selle kohta leiate teemast Tabeliseostega alustamine.
Kui olete lõpetanud, peaksid seosed välja nägema midagi sellist.