DatamaskinerDatabaser

En mange-til-mange: Et eksempel i Access, i SQL. Hvordan lage en mange-til-mange?

Alle DBMS (database management system) , er det flere typer relasjoner mellom tabeller. Blant dem en-til-en, en-til-mange, mange-til-én (noen er tilbøyelig til å identifisere disse to typer til ett) og mange-til-mange. Et eksempel på det sistnevnte, og en forklaring av dens anvendelse i ulike databaser, for eksempel Access eller SQL, vil bli diskutert i denne artikkelen.

definisjon

Mange-til-mange-relasjon er definert som en kamp for noen av eksemplarer av en av essenser av alle andre tilfeller. Med andre ord, hvert felt av den første (andre) tabell assosiert med alle feltene i den andre (første).

Denne ordningen gjenspeiler klart essensen av dette forholdet.

Når en mange-til-mange relasjoner kan brukes?

Et eksempel på en mange-til-mange - en studentgruppe og en gruppe lærere. Hver student lærer på en gang i løpet av få professorer, som i sin tur gi forelesninger flere studenter. På bildet viser forskjellen mellom en en-til-mange og mange-til-mange.

Mange-til-mange-relasjon er ofte nødvendig i utarbeidelsen av store databaser, små illustrerende eksempler som vanligvis brukes for pedagogiske formål, i virkeligheten, i praksis viser det seg at jo flere enheter i databasen og flere relasjonene mellom dem - jo mer sannsynligheten for hyppige ty til mange-til-mange.

Hvordan lage en mange-til-mange?

Eksempler på forhold det er snakk om vil fortsatt bli lagt i løpet av artikkelen, men det er viktig ikke bare å forstå hva det er, men også hvordan man skal gjennomføre det. Detaljer om denne prosessen er direkte avhengig av valgt database for jobben, mens prinsippet er det samme for alle.

Microsoft Access

Office-programvare fra "Microsoft" er kjent i programvaren markedet for ganske lang tid. Det følger med en teksteditor Worfd, Excel tabell prosessor og den andre tilhører linjen av "kontoret". Du kan få tilgang (lese som "adgang", bokstavelig oversettelse - "access") for å kjøpe og atskilt fra hans "kolleger". Det anbefales å kjøpe, selvfølgelig, lisensiert programvare, men det er ingen hemmelighet hvor mye pirat repack kan finnes i de aller nettet, i form av vanlige filer eller torrents hender. "Microsoft Acces" er tilgjengelig selv i en bærbar montering. Det krever ikke installasjon og noen spesielle ferdigheter for å arbeide med en PC, er det best egnet for utvalget hvis programvaren ikke skal brukes langvarig og ofte.

Fra sammenhengen er det klart at "Microsoft Acces" - en database management system. Og en av de mest populære. Det er relasjons, noe som betyr at det er basert på den logiske datamodellen, som er i løpet av sitt arbeid refererer til settet teori og første-ordens logikk. Mange-til-mange-relasjon i Access (eksempler vil bli gitt i forklaringen) er realisert veldig, veldig enkelt. Tenk det.

Det er to bord ..

For ikke å oppfinne noe nytt, ta den allerede nevnte å forklare mange-til-mange eksempel om studentene. Du må opprette en tabell "Studenter" og table "Teachers." Både første og andre av disse er primærnøkler. krever også en annen tabell, hvilke felter for å kombinere forekomster av de to enhetene - nøklene til de første og andre tabeller.

Hvis vi ser på et annet eksempel: la oss si, spillerne og laget (gitt det faktum at minst en av spillerne som spiller for forskjellige lag, og hvert lag består av elleve spillere), er å bygge en forbindelse vil ikke endres. De vil også trenge tre tabeller. Av disse "Fotball" og "Team" som den viktigste og en mellom.

data ordningen

Relasjoner mellom tabeller i databasen "Microsoft Acces" gjennomført ved hjelp av kategorien "Data Scheme". Skjermpanelet er lagt til alle enhetene (i dette tilfellet, alle tre tabeller). Lag en mange-til-mange skal bruke de to relasjoner, en-til-mange-relasjon mellom oppdragsgiver ( "Studenter" og "lærere") og rekkefølgetabellen. For å gjøre dette, må du koble sammen de respektive primærnøkler.

Illustrasjonen viser hvordan kategorien "data circuit" (Relathionships). Antallet lagt til bordplaten på ubestemt tid. Beliggenheten er fullt justerbar av brukeren.

SQL

Database Design på SQL - vanskeligere oppgave enn å "Acces". Hvis maykrosoftovskih produktet er fullt tilpasset kontormiljøet, har en stor, og med hver utgivelse, og oppdatere alle utvidbar funksjonalitet, men samtidig praktisk for enkelt brukergrensesnitt, SQL - det er en egen ikke-prosessuelle programmeringsspråk, som på forskjellige plattformer du kan jobbe med databaser. Den kjente programvare for denne oppgaven: Oracle MySQL og DB2 (en populær, men ikke den eneste av sitt slag). Til tross for at hver av dem har sine nyansene, er SQL-språket deres "United". Ved å lære å arbeide med minst ett av dem, for å håndtere andre vil være mye enklere.

Lag, fyll og direkte handlinger på den eksisterende databasen i SQL trengs gjennom en spesiell kode eller skript. Men de som allerede har gjort det til avsnittet "mange-til-mange", et eksempel på noe som i dette programmeringsspråk er gitt nedenfor, må vite minst de grunnleggende kommandoer og prinsipper SQL språket.

Prinsippet med å skape en mange-til-mange

Langvarig tiltredelse kan fornærme noen og "slippe løs tåke", men faktum er at prinsippet om gjennomføringen av kommunikasjonen forblir den samme. For å skrive en mange-til-mange-relasjon har blitt gjennomført i praksis, ikke bare i "Acces", men også SQL, må i utgangspunktet lage to basistabeller og en - middels. Tilsvarende er det med nøkkelen: den grunnleggende natur er hovedfeltene, som hver er registrert i koblingsbord. Hvilket betyr at SQL-mange-til-mange relasjoner er ikke fundamentalt forskjellig fra "Acces".

Implementering av kommunikasjons

Å gjennomføre en mange-til-mange i en SQL-script benytter eksterne tastene (sekundærnøkkel) ligner på den originale nøkkelen i hovedtabellen. De registreres sammen med alle felt ved å opprette og / eller redigering.

Rollen som en mange-til-mange

Generelt er forholdet mellom enhetene i databasen som brukes for integriteten av informasjonen som er lagret i dem. Bare en godt utformet database med alle de nødvendige tilkoblinger som sikrer trygg lagring, brukeropplevelse og er en struktur som er motstandsdyktig overfor ytre påvirkninger og endringer. Vanligvis, hvis databasen inneholder data om hele organisasjonen, selskap eller firma, den inneholder et sett av enheter med ulike instanser.

Dette betyr at ved fremstillingen av disse ordningene ( "Adgang") eller skrive skript (i "Oracle" eller "DiBiTu") som vil være til stede minst en mange-til-mange. Eksempel SQL, er ofte brukt i kurset "Database Organization" - DB King.

Base av Kongens data

Treningen databasen er informasjon om kong aksjeselskap. Blant tabellene:

  • ansatte i selskapet - inneholder den ansatte ID, etternavn, fornavn og mellomnavn innledende (fokus på utenlandske navn), også kode for sjefen og den ansatte okkuperte stilling, dato for opptak til bedriftene som får sin lønn og provisjon gitt, avdeling kode;
  • avdelinger av selskaper - blant feltene i tabellen har koden og navnet på avdelingen, samt etiske beliggenheten;
  • plassering avdelinger, som innebærer å legge inn informasjon på koden plasseringen og navnet på byen,
  • stilling i selskapet - et lite bord med to felt postnummer og dens offisielle navn;
  • bedrifter-kjøpere - felt: Koden og navnet på kjøperen, adresse, by, stat, postnummer og retningsnummer, telefonnummer, service leder av kundekoden, æren for kjøper og kommentarer (kommentarer og notater);
  • salgsavtaler, som inneholder koden og datoen for kontrakten, kjøperen kode, leveringstidspunkt og den totale mengden av kontrakten;
  • Handlinger av salg - det handler om koden og koden av kontrakten, som omfatter loven, produktkode, sin pris, kvantum kjøpt og den totale anskaffelseskost;
  • Varene - kodenavnet på produktet;
  • pris - produktkode, kunngjorde ham prisen, lavest mulig pris, dato for etablering og dato for kansellering pris.

Lite bord tilgjengelig ikke mer enn to eller tre felt der forbundet med opp til en tabell med en en-til-en eller en-til-mange.

Scale samme bord, slik som "ansatte i selskapet", "firma-forbrukere", "salgsavtaler" og "handlinger av salg" er forbundet med flere enheter, med noen - med hjelp av "mellommenn" mange-til-mange-relasjon. Tabell "kjøpere av selskapet" er i seg selv en mellommann, som sådan, fordi den har mange av feltet, hentet fra andre tabeller og en fremmednøkkel. I tillegg, omfanget og forholdet databasen "King Corporation" er at alle forhold er uløselig korrelert med hverandre og påvirker hverandre. Ødeleggelsen av minst ett av dem vil føre til ødeleggelse av integriteten til hele databasen.

viktige nyanser

Ved implementering av en mange-til-mange, uavhengig av hvilken database management system brukes, er det viktig å finne de riktige tastene som vil bli trukket opp holdning. Feilaktig implementert forbindelse ikke oppfyller sin hovedformålet - nemlig, for å sikre integriteten av bordet, og som et resultat, i stedet for den forventede komfort, vil brukeren motta, på den annen side den ulempe og ytterligere problemer, spesielt tydelig under fylling av redigering tabeller og deres data.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 no.unansea.com. Theme powered by WordPress.