DatorerDatabaser

En många-till-många: Ett exempel i Access, i SQL. Hur man gör en många-till-många?

Alla DBMS (databas Management System) , det finns flera typer av relationer mellan tabeller. Bland dem en-till-en, en-till-många, många-till-en (vissa är benägna att identifiera dessa två typer i en) och många-till-många. Ett exempel på det senare, och en förklaring av dess tillämpning i olika databaser, t.ex. Access eller SQL, kommer att diskuteras i denna artikel.

definition

Många-till-många relation definieras som en match mot något exemplar av en av de essenser av alla andra instanser. Med andra ord, varje fält av den första (andra) tabellen associerad med alla områden av den andra (första).

Detta system återspeglar tydligt kärnan i detta förhållande.

När en många-till-många relationer kan användas?

Ett exempel på en många-till-många - en studentgrupp och en grupp av lärare. Varje elev lär sig på en gång i några professorer, som i sin tur ger föreläsningar flera elever. På bilden visar skillnaden mellan en en-till-många och många-till-många.

Många-till-många relation är ofta nödvändigt vid beredningen av storskaliga databaser, små illustrativa exempel som vanligtvis används endast i utbildningssyfte, i själva verket, i praktiken visar det sig att ju fler enheter i databasen och fler relationer mellan dem - ju mer sannolikheten för ofta anlita många-till-många.

Hur man gör en många-till-många?

Exempel på förhållandet i fråga kommer fortfarande att läggas under artikeln, men det är viktigt att inte bara förstå vad det är, men också hur man ska genomföra det. Information om denna process är direkt beroende av databasen ut för jobbet, medan principen är densamma för alla.

Microsoft Access

Office-program från "Microsoft" är känd i mjukvaran marknaden under ganska lång tid. Den levereras med en textredigerare Worfd, Excel tabell processor och den andra hör till raden av "kontoret". Du kan komma åt (läs som "acces", bokstavlig översättning - "access") att förvärva och separat från sina "kollegor". Det rekommenderas att köpa, naturligtvis, licensierad programvara, men det är ingen hemlighet hur mycket pirat repack kan hittas i de allra nätet, i form av vanliga filer eller enter händer. "Microsoft Acces" finns även i en bärbar enhet. Det kräver ingen installation och några speciella färdigheter för att arbeta med en dator, är det bäst för val om programmet inte ska användas långvariga och ofta.

Av sammanhanget är det tydligt att "Microsoft Acces" - ett databassystem. Och en av de mest populära. Det är relationell, vilket innebär att den är baserad på den logiska datamodellen, som är i sitt arbete hänvisar till mängdlära och första ordningens logik. Många-till-många-relation i Access (exempel ges i förklaringen) realiseras mycket, mycket enkel. Överväga det.

Det finns två tabeller ..

För att inte uppfinna något nytt, ta de redan nämnda för att förklara de många-till-många exempel om eleverna. Du måste skapa en tabell "studenter" och tabellen "lärare." Både den första och andra av dessa är primära nycklar. kräver också en annan tabell, vilka fält för att kombinera instanser av de två enheterna - nycklarna de första och andra tabeller.

Om vi betraktar en annan exempel: låt oss säga, spelarna och laget (med tanke på att åtminstone en av de spelare som spelar för olika lag, och varje lag består av elva spelare), bygger en anslutning inte kommer att förändras. De kommer också att behöva tre tabeller. Av dessa "fotboll" och "Team" som den viktigaste och en mellan.

uppgifter schema

Relationer mellan tabeller i databasen "Microsoft Acces" genomförs med hjälp av fliken "Data Scheme". Displaypanelen läggs till alla enheter (i detta fall, alla tre tabeller). Skapa en många-till-många kommer att använda de två relationer, en-till-många-relation mellan huvudmannen ( "studenter" och "lärare") och mellanlagringstabellen. För att göra detta måste du koppla respektive primärnycklar.

Illustrationen ovan visar hur fliken "datakrets" (Relathionships). Antalet läggas till i tabellen styrelsen på obestämd tid. Läget är fullt justerbar av användaren.

SQL

Databasdesign på SQL - svårare uppgift än att "Acces". Om maykrosoftovskih produkten är helt anpassad till kontorsmiljön, har en stor och med varje utgåva och uppdatera alla extensible funktionalitet, men samtidigt bekvämt för enkla användargränssnitt, SQL - det är en separat icke-procedur programmeringsspråk, som på olika plattformar du kan arbeta med databaser. Den välkända program för denna uppgift: Oracle MySQL och DB2 (en populär, men inte den enda i sitt slag). Trots att var och en av dem har sina subtiliteter och nyanser är SQL-språket deras "United". Genom att lära sig arbeta med åtminstone en av dem, för att ta itu med andra kommer att bli mycket lättare.

Skapa, fyll och direkta åtgärder på den befintliga databasen i SQL behövs genom en speciell kod eller skript. Men de som redan har gjort det till avsnittet "många-till-många", ett exempel på vilken i detta programmeringsspråk återges nedan, måste veta åtminstone de grundläggande kommandon och principerna för SQL-språket.

Principen om att skapa en många-till-många

Långvarig anslutning kan genera en del och "släppa loss dimman", men faktum är att principen om genomförandet av kommunikationen förblir densamma. För att skriva en många-till-många relation har genomförts i praktiken, inte bara i "Acces", men också SQL, måste först skapa två bas bord och en - mellan. Likaså är det med nyckeln: grundläggande natur är de huvudområden, av vilka vardera är inspelade i länkningstabellen. Vilket innebär att SQL-många-till-många relationer är i grunden inte skiljer sig från de "Acces".

Genomförande av kommunikation

Att genomföra ett många-till-många i en SQL-skript med hjälp av externa knappar (FOREIGN KEY) liknande den ursprungliga nyckeln i huvudtabellen. De spelade tillsammans med alla fält när du skapar och / eller redigering.

Den roll som en många-till-många

I allmänhet, förhållandet mellan enheterna i databasen som används för integriteten hos den information som lagras i dem. Endast en väl utformad databas med alla nödvändiga anslutningar garanterar säker lagring, användarupplevelse och är en struktur som är resistent mot yttre påverkan och förändringar. Vanligtvis, om databasen innehåller uppgifter om hela organisationen, företag eller företag, innehåller en uppsättning av enheter med olika instanser.

Detta innebär att vid framställningen av dessa system ( "Acces") eller skriva skript (i "Oracle" eller "DiBiTu") kommer att vara närvarande åtminstone en många-till-många. Exempel SQL används ofta i utbildningen "Database Organization" - DB King.

Bas kung data

Utbildningen databasen finns information om King Corporation. Bland tabellerna:

  • anställda i bolaget - innehåller den anställde ID, efternamn, förnamn och mellan initial (med fokus på utländska namn), även koden för chefen och den anställde ockuperade ställning, datum för tillträde till de företag som tar emot sin lön och provision tillhandahålls, avdelningskod;
  • avdelningar företag - bland fälten i tabellen har koden och namnet på institutionen, samt koden för sin plats;
  • placering avdelningar, vilket innebär att mata in information om koden placeringen och namnet på staden,
  • position i företaget - ett litet bord med två fält postnummer och dess officiella namn;
  • byråer-köpare - fält: Koden och namnet på köparen, adress, stad, stat, postnummer och riktnummer, telefonnummer, servicechef på kundkod, äran för köpare och kommentarer (kommentarer och anteckningar);
  • försäljningsavtal, som innehåller koden och datum för kontraktet, köparen koden, leveransdatum och det totala kontraktsbeloppet,
  • Handlingar försäljning - handlingen av koden koden av kontraktet, vilket inkluderar handlingen, produktkod, dess pris, kvantitet köpte och den totala inköpskostnaden;
  • Varorna - kodnamnet för produkten;
  • pris - produktkoden, meddelade honom priset, till lägsta möjliga pris, datum för etablering och datum för annullering pris.

Litet bord finns där inte mer än två eller tre fält i samband med upp till en tabell med en en-till-en eller en-till-många.

Skala samma bord, som "anställda i bolaget", "företags konsumenter", "försäljningsavtal" och "handlingar försäljning" är förknippade med flera enheter, med några - med hjälp av "mellanhänder" många-till-många relation. Tabell "köpare av bolaget" i sig är en mellanhand, som sådan, eftersom det har många av fältet, tagen från andra tabeller och en främmande nyckel. Dessutom är skalan och förhållandet databasen "King Corporation" att alla relationer är oupplösligt korrelerade med varandra och påverkar varandra. Förstörelsen av åtminstone en av dem kommer att leda till förstörelse av integriteten hos hela databasen.

viktiga nyanser

Vid genomförandet av en många-till-många, oavsett vilken databas ledningssystem används är det viktigt att bestämma rätt nycklar som kommer att utarbetas attityd. Felaktigt genomfört anslutningen inte uppfyller dess huvudsakliga syfte - nämligen att säkerställa integriteten i tabellen, och som ett resultat, i stället för den förväntade komfort, får användaren, å andra sidan, besvär och ytterligare problem, särskilt tydligt under påfyllning av redigera tabeller och deras data.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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