ComputereDatabaser

En mange-til-mange: Et eksempel i Access, i SQL. Sådan laver du en mange-til-mange?

Alle DBMS (Database Management System) , er der flere typer af relationer mellem tabeller. Blandt dem en-til-en, en-til-mange, mange-til-en (nogle er tilbøjelige til at identificere disse to typer i én), og mange-til-mange. Et eksempel på sidstnævnte, og en forklaring af dens anvendelse i forskellige databaser, såsom Access eller SQL, vil blive drøftet i denne artikel.

definition

Mange-til-mange-relation er defineret som en kamp til nogen af de eksemplarer af en af de essenser af alle andre tilfælde. Med andre ord, hvert felt i den første (andet) tabel forbundet med alle områder af det andet (første).

Denne ordning tydeligt afspejler essensen af dette forhold.

Når en mange-til-mange relationer kan bruges?

Et eksempel på en mange-til-mange - en studerende gruppe og en gruppe lærere. Hver elev lærer på en gang i et par professorer, som til gengæld giver foredrag flere studerende. På billedet viser forskellen mellem en en-til-mange og mange-til-mange.

Mange-til-mange-relation er ofte nødvendig i forberedelsen af store databaser, små illustrative eksempler, som typisk bruges kun til undervisningsbrug, i virkeligheden, i praksis viser det sig, at jo flere enheder i databasen og flere relationer mellem dem - jo mere sandsynligheden for hyppig brug af mange-til-mange.

Sådan laver du en mange-til-mange?

Eksempler på relationen pågældende vil stadig blive tilføjet i løbet af artiklen, men det er vigtigt ikke kun at forstå, hvad det er, men også hvordan man gennemfører det. Nærmere oplysninger om denne proces afhænger direkte af den valgte til jobdatabasen, mens princippet er det samme for alle.

Microsoft Access

Office-software fra "Microsoft" er kendt på softwaremarkedet i ganske lang tid. Den leveres med en teksteditor Worfd, Excel tabelform processor og den anden hører til rækken af "kontoret". Du kan få adgang (læses som "adgang", den bogstavelige oversættelse - "adgang") til at købe og adskilt fra hans "kolleger". Det anbefales at købe, selvfølgelig, licenseret software, men det er ingen hemmelighed, hvor meget piratkopieret repack kan findes i det store web, i form af almindelige filer, eller torrents hænder. "Microsoft Acces" er tilgængelig, selv i en bærbar enhed. Det kræver ikke installation og eventuelle særlige færdigheder til at arbejde med en pc, det er bedst egnet til udvælgelse, hvis softwaren ikke vil blive brugt langvarig og ofte.

Fra sammenhæng er det klart, at "Microsoft Acces" - en database management system. Og en af de mest populære. Det er relationel, hvilket betyder, at det er baseret på den logiske datamodel, som er i forbindelse med sit arbejde refererer til mængdelære og første-ordens logik. Mange-til-mange-relation i Access (eksempler vil blive givet i forklaringen) er realiseret meget, meget simpelt. Overvej det.

Der er to borde ..

For ikke at opfinde noget nyt, tage den allerede nævnte til at forklare den mange-til-mange eksempel om de studerende. Du skal oprette en tabel "Studerende" og tabellen "Lærere". Både den første og anden af disse er primære nøgler. kræver også en anden tabel, hvilke felter til at kombinere forekomster af de to enheder - nøglerne den første og anden tabeller.

Hvis vi overveje en anden eksempel: lad os sige, spillerne og holdet (i betragtning af, at mindst én af de spillere, der spiller for forskellige hold, og hvert hold består af elleve spillere), er ved at opbygge en forbindelse, vil ikke ændre sig. De vil også brug for tre tabeller. Af disse er "Fodbold" og "Team" som det vigtigste og en mellemliggende.

ordningen data

Forholdet mellem tabeller i databasen "Microsoft Acces" implementeres ved hjælp af fanen "Data Scheme". Displayet føjes til alle de enheder (i dette tilfælde, alle tre tabeller). Opret en mange-til-mange vil bruge de to relationer, en-til-mange-relation mellem principalen ( "Studerende" og "Lærere") og iscenesættelse bordet. For at gøre dette, skal du forbinde de respektive primære nøgler.

Illustrationen ovenfor viser, hvordan fanen "data kredsløb" (Relathionships). Antallet af tilsat til bordpladen på ubestemt tid. Placering er fuldt justerbar af brugeren.

SQL

Database Design på SQL - hårdere opgave end at "Acces". Hvis maykrosoftovskih produktet er fuldt tilpasset til kontormiljøer, har en enorm og, med hver udgivelse og opdatere alle Extensible funktionalitet, men samtidig bekvemt for enkel brugergrænseflade, SQL - det er en separat programmeringssprog ikke-proceduremæssige, som på forskellige platforme du kan arbejde med databaser. Den velkendte software til denne opgave: Oracle MySQL og DB2 (en populær, men ikke den eneste af sin slags). Trods det faktum, at hver af dem har sine finesser og nuancer, SQL sproget er deres "forenet". Ved at lære at arbejde med i det mindste en af dem, at beskæftige sig med andre vil være meget nemmere.

Opret, fylde og direkte aktioner på eksisterende database i SQL behov gennem en særlig kode eller scripts. Men de, der allerede har gjort det til afsnittet "mange-til-mange", hvoraf et eksempel på dette programmeringssprog er angivet nedenfor, skal kende mindst de grundlæggende kommandoer og principperne i den SQL-sproget.

Princippet om at skabe en mange-til-mange

Langvarig tiltrædelse kunne genere nogle og "frigøre tågen", men i virkeligheden princippet om gennemførelsen af kommunikationen forbliver den samme. For at skrive en mange-til-mange-relation er blevet implementeret i praksis, ikke kun i de "Acces", men også SQL, nødt til at begynde at oprette to basistabeller og én - mellemliggende. Ligeledes er det med nøglen: den grundlæggende natur er de vigtigste områder, som hver især er registreret i bindingsgruppen tabellen. Hvilket betyder, at SQL-mange-til-mange relationer er ikke fundamentalt forskellige fra de "Acces".

Implementering af kommunikation

For at implementere en mange-til-mange i en SQL script brug af eksterne taster (fremmed nøgle) i lighed med den oprindelige nøgle i hovedtabellen. De indspillede sammen med alle områder, når du opretter og / eller redigering.

Den rolle, som en mange-til-mange

Generelt er forholdet mellem de enheder i databasen anvendes til integriteten af de lagrede oplysninger i dem. Kun en veltilrettelagt database med alle de nødvendige tilslutninger sikrer sikker opbevaring, brugeroplevelse og er en struktur, der er resistent over for ydre påvirkninger og ændringer. Normalt, hvis databasen indeholder data om hele organisationen, firma eller virksomhed, det indeholder et sæt af enheder med forskellige instanser.

Det betyder, at i udarbejdelsen af disse ordninger ( "Acces") eller skrive scripts (i "Oracle" eller "DiBiTu") vil være til stede i det mindste én mange-til-mange. Eksempel SQL, bruges ofte i kurset "Database Organisation" - DB King.

Base af Kongens data

Uddannelsen Databasen er oplysninger om King Corporation. Blandt tabellerne:

  • ansatte i selskabet - indeholder medarbejder-id, efternavn, fornavn og midterste initial (fokus på udenlandske navne), også kode for chefen og medarbejderen besat stillingen, dato for optagelse på de virksomheder, der modtager deres løn og provision forudsat, afdeling kode;
  • afdelinger af virksomheder - blandt felterne i tabellen har koden og navnet på den afdeling, samt koden for dens placering;
  • placering afdelinger, som involverer ind oplysninger om koden placering og navnet på byen;
  • position i selskabet - et lille bord med to felter skrive kode og dens officielle navn;
  • virksomheder-købere - felter: den kode og navnet på køberen, adresse, by, stat, postnummer og områdenummer, telefonnummer, service manager for kunden koden, den kredit for køberen og kommentarer (kommentarer og noter);
  • salgsaftaler, der indeholder koden og datoen for kontraktens køber kode, leveringsdato og det samlede beløb for kontrakten;
  • Retsakter salg - den handling af koden og koden af kontrakten, som omfatter den handling, produktkode, sin pris, mængde købt og de samlede købsudgifter;
  • Varerne - kodenavnet af produktet;
  • pris - produktkoden, meddelte ham prisen, den lavest mulige pris, dato for etablering og datoen for annulleringen pris.

Lille bord til rådighed, hvor der ikke mere end to eller tre felter i forbindelse med op til et bord af en en-til-en eller en-til-mange.

Scale samme bord, som "ansatte i virksomheden", "firma-forbrugere", "salgsaftaler" og "handlinger salget" er forbundet med flere enheder, med nogle - med hjælp af "mellemmænd" mange-til-mange-relation. Tabel "købere af virksomheden" er i sig selv et mellemled, som sådan, fordi det har mange af feltet, tages fra andre tabeller og en fremmed nøgle. Hertil kommer, at omfanget og forholdet databasen "King Corporation" er, at alle relationer uløseligt er korreleret med hinanden og påvirker hinanden. Ødelæggelsen af mindst en af dem vil føre til ødelæggelse af integriteten af hele databasen.

vigtige nuancer

Ved gennemførelsen af en mange-til-mange, uanset hvilken database management system bruges, er det vigtigt at bestemme de rigtige taster, som vil blive udarbejdet holdning. Forkert implementeret forbindelsen ikke opfylder sine vigtigste formål - nemlig at sikre integriteten af bordet, og som et resultat, i stedet for den forventede komfort, vil brugeren modtage, på den anden side, ulejligheden og yderligere problemer, især tydeligt under påfyldning af redigere tabeller og deres data.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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