/ / Databaser er relationelle. Relationel databasekoncept

Relationelle databaser. Relationel databasekoncept

Fremkomsten af ​​computerteknologi i voresmodernitet har markeret en informationsrevolution på alle områder af menneskelig aktivitet. Men for at forhindre, at al information bliver unødvendig skrald på det globale internet, blev der opfundet et databasesystem, i hvilket materiale sorteres, systematiseres, hvilket resulterer i, at de let kan findes og præsenteres til efterfølgende behandling. Der er tre hovedtyper - relationsdatabaser, hierarkiske, netværk.

Grundlæggende modeller

At gå tilbage til oprindelsen af ​​databaser er det værdat sige, at denne proces var ret kompleks, den stammer fra udviklingen af ​​programmerbart udstyr til informationsbehandling. Derfor er det ikke overraskende, at antallet af deres modeller i øjeblikket når mere end 50, men de vigtigste anses for at være hierarkiske, relationelle og netværk, som stadig bruges i vid udstrækning. Hvad er de?

Den hierarkiske database har et trælignendestruktur og er sammensat af data på forskellige niveauer, mellem hvilke der er forbindelser. DB-netværksmodellen er et mere komplekst mønster. Dens struktur ligner en hierarkisk, og ordningen udvides og forbedres. Forskellen mellem dem er, at de arvelige data i en hierarkisk model kun kan have forbindelse med en forfader, mens netværksdataene kan have flere. Strukturen i en relationsdatabase er meget mere kompleks. Derfor bør det analyseres mere detaljeret.

relationel databasestruktur

Grundlæggende koncept for en relationsdatabase

Denne model blev udviklet i 1970'erne.af Edgar Codd, Doctor of Science. Det er en logisk struktureret tabel med felter, der beskriver dataene, deres forhold til hinanden, de operationer, der udføres på dem og vigtigst af alt de regler, der garanterer deres integritet. Hvorfor kaldes modellen relationel? Det er baseret på relationer (fra lat. Relatio) mellem data. Der er mange definitioner for denne type database. Relationelle tabeller med information er meget lettere at organisere og behandle end i et netværk eller en hierarkisk model. Hvordan kan dette gøres? Det er nok at kende funktionerne, modellens struktur og egenskaberne ved relationelle tabeller.

relationel database koncept

Processen med modellering og udarbejdelse af hovedelementerne

For at oprette dit eget DBMS skal dubrug et af modelleringsværktøjerne, tænk over, hvilke oplysninger du har brug for at arbejde med, design tabeller og relationelle enkelt- og multiple forhold mellem data, udfyld enhedsceller og indstil primære, udenlandske nøgler.

Tabelmodellering og relationsdesigndatabaser produceres gennem gratis værktøjer såsom Workbench, PhpMyAdmin, Case Studio, dbForge Studio. Efter detaljeret design skal du gemme den grafisk klar relationelle model og oversætte den til færdiglavet SQL-kode. På dette stadium kan du begynde at arbejde med datasortering, behandling og systematisering.

relationel database design

Funktioner, struktur og udtryk relateret til relationsmodellen

Hver kilde beskriver sine elementer på sin egen måde, så for mindre forvirring vil jeg gerne give et lille tip:

  • relationel etiket = enhed;
  • layout = attributter = feltnavne = kolonneoverskrifter for enheder;
  • enhedsforekomst = tuple = record = tabelrække;
  • attributværdi = enhedscelle = felt.

relationel databasepost

For at komme til egenskaberne for en relationsdatabase skal du vide, hvilke grundlæggende komponenter den består af, og hvad de er beregnet til.

  1. Essens.Der kan være en tabel i en relationsdatabase, eller der kan være et helt sæt tabeller, der karakteriserer de beskrevne objekter på grund af de data, der er gemt i dem. De har et fast antal felter og et variabelt antal poster. En relationsdatabasemodeltabel er sammensat af strenge, attributter og et layout.
  2. Optag - et variabelt antal linjer, der viser data, der karakteriserer det beskrevne objekt. Optegnelserne nummereres automatisk af systemet.
  3. Attributter er data, der demonstrerer beskrivelsen af ​​enhedskolonnerne.
  4. Mark. Repræsenterer en enhedskolonne. Deres antal er en fast værdi, der indstilles under oprettelsen eller ændringen af ​​tabellen.

relationsdatabasetabel

Nu ved du at kende de bestanddele, der findes i tabellen, kan du gå til egenskaberne for databasens relationelle model:

  • Relationsdatabaseenheder er todimensionale. Takket være denne egenskab er det let at udføre forskellige logiske og matematiske operationer med dem.
  • Rækkefølgen af ​​værdier for attributter og poster i en relationstabel kan være vilkårlig.
  • En kolonne inden for en relationstabel skal have sit eget individuelle navn.
  • Alle data i en enhedskolonne har en fast længde og samme type.
  • Enhver post betragtes i det væsentlige som et dataelement.
  • Strengens bestanddele er unikke. Der er ingen duplikerede rækker i en relationel enhed.

Baseret på egenskaberne ved en relationel DBMS er det klart, at attributværdierne skal være af samme type og længde. Lad os overveje funktionerne i attributværdierne.

Grundlæggende egenskaber ved relationelle databasefelter

Feltnavne skal være unikke inden foren enhed. Relational database attribut eller felttyper beskriver, hvilke kategoridata der er gemt i enhedsfelter. Et relationsdatabasefelt skal have en fast størrelse i tegn. Parametrene og formatet for attributværdier bestemmer, hvordan dataene korrigeres i dem. Der er også sådan en ting som "maske" eller "input mønster". Det er beregnet til at definere konfigurationen af ​​dataindtastning i attributværdien. Det er bydende nødvendigt, at der udstedes en fejlmeddelelse, når du skriver en forkert datatype i et felt. Der pålægges også nogle begrænsninger for elementerne i felterne - betingelser for kontrol af nøjagtigheden og fejlfri dataindtastning. Der er en påkrævet attributværdi, der entydigt skal udfyldes med data. Nogle attributstrenge kan udfyldes med NULL-værdier. Indtastning af tomme data i feltattributter er tilladt. Ligesom fejlmeddelelsen er der værdier, der automatisk udfyldes af systemet - dette er standarddata. Et indekseret felt er beregnet til at fremskynde søgningen efter data.

relationelle databasefelttyper

2D relationel databasetabel skema

Relationelt DB-skema
Attributnavn 1Attributnavn 2Attributnavn 3Attributnavn 4Attributnavn 5
Vare_1_1Vare_1_2Vare_1_3Vare_1_4Vare_1_5
Vare_2_1Vare_2_2Vare_2_3Vare_2_4Vare_2_5
Vare_3_1Vare_3_2Vare_3_3Vare_3_4Vare_3_5

For en detaljeret forståelse af kontrolsystemetModeller, der bruger SQL, er den bedste måde at se skemaet på ved eksempel. Vi ved allerede, hvad en relationsdatabase er. En post i hver tabel er et dataelement. For at forhindre dataredundans er det nødvendigt at udføre normaliseringsoperationer.

Grundlæggende regler for normalisering af en relationel enhed

1. Værdien af ​​feltnavnet for en relationstabel skal være unik, unik (den første normale form er 1NF).

2. For en tabel, der allerede er reduceret til 1NF, skal navnet på en ikke-identificerende kolonne afhænge af den unikke identifikator for tabellen (2NF).

3. For hele tabellen, der allerede er i 2NF, kan hvert ikke-identificerende felt ikke afhænge af et element af en anden ukendt værdi (enhed 3NF).

Databaser: relationelle forhold mellem tabeller

Der er to hovedtyper af relationelle tabelforhold:

  • En-mange.Opstår, når en nøgleregistrering i tabel nr. 1 matcher flere forekomster af den anden enhed. Et nøgleikon i den ene ende af den tegnede linje angiver, at enheden er på "den ene" side, den anden ende af linjen er ofte markeret med et uendeligt symbol.

relationelle databaser

  • Et "mange-mange" forhold dannes, når flere rækker af en enhed har en eksplicit logisk interaktion med et antal poster i en anden tabel.
  • Hvis der er mellem to enhedersammenkædning "en til en", hvilket betyder, at nøgleidentifikatoren for en tabel er til stede i en anden enhed, så skal en af ​​tabellerne fjernes, det er overflødigt. Men nogle gange adskiller programmører bevidst de to enheder udelukkende af sikkerhedsmæssige årsager. Derfor kan der hypotetisk eksistere et en-til-et forhold.

Eksistensen af ​​nøgler i en relationsdatabase

Primære og sekundære nøgler definererpotentielle databaseforhold. Relationslinks i en datamodel kan kun have en potentiel nøgle, dette vil være den primære nøgle. Hvordan er han? En primær nøgle er en enhedskolonne eller et sæt attributter, der giver dig adgang til dataene for en bestemt række. Det skal være unikt, unikt, og dets felter kan ikke indeholde tomme værdier. Hvis den primære nøgle kun består af en attribut, kaldes den simpel, ellers vil den være en komponent.

Ud over den primære nøgle er der også en ekstern(fremmed nøgle). Mange forstår ikke, hvad forskellen er mellem dem. Lad os se nærmere på dem ved hjælp af et eksempel. Så der er to tabeller: "Dekanskontoret" og "Studerende". Enheden "Dean's office" indeholder felterne: "Student ID", "Full name" og "Group". Tabellen "Studerende" har attributværdier som "Navn", "Gruppe" og "Gennemsnit". Da studerende-id ikke kan være det samme for flere studerende, vil dette felt være den primære nøgle. "Fuldt navn" og "Gruppe" fra "Studerende" -tabellen kan være den samme for flere personer. De henviser til ID-nummeret på den studerende fra "Dekanatens kontor" -enhed, derfor kan de bruges som en fremmed nøgle.

Relationsdatabase Modeleksempel

For klarhedens skyld vil vi give et simpelt eksempel på en relationsdatabasemodel bestående af to enheder. Der er en tabel kaldet "Dekanat".

Essence "Dekanat"

studiekort

Fulde navn

Gruppen

111

Ivanov Oleg Petrovich

IN-41

222

Ilya Lazarev

IN-72

333

Konoplev Petr Vasilievich

IN-41

444

Kushnereva Natalia Igorevna

IN-72

Du skal oprette forbindelser for at kommefuldgyldig relationsdatabase. Posten "IN-41", ligesom "IN-72", kan være til stede mere end én gang i "Dean's office" -pladen, og de studerendes efternavn, fornavn og patronym kan i sjældne tilfælde falde sammen, så disse felter kan ikke være lavet den primære nøgle. Lad os vise enheden "Studerende".

"Studerende" tabel

Fulde navn

Gruppen

Gennemsnitlig karakter

telefon

Ivanov Oleg Petrovich

IN-41

3,0

2-27-36

Ilya Lazarev

IN-72

3,8

2-36-82

Konoplev Petr Vasilievich

IN-41

3,9

2-54-78

Kushnereva Natalia Igorevna

IN-72

4,7

2-65-25

Som vi kan se, typer felter i relationsdatabaserhelt anderledes. Der er både digitale og symbolske poster. Derfor skal værdierne for heltal, char, vachar, dato og andre specificeres i attributindstillingerne. I tabellen "Dean's office" er kun studerende-ID en unik værdi. Dette felt kan tages som en primær nøgle. Fuldt navn, gruppe og telefonnummer fra "Studerende" -enheden kan tages som en fremmed nøgle, der henviser til studerendes id. Forbindelsen er oprettet. Dette er et eksempel på en en-til-en forholdsmodel. Hypotetisk er en af ​​tabellerne overflødig, de kan let kombineres til en enhed. For at forhindre, at elev-ID-numre bliver almindeligt kendt, er eksistensen af ​​to tabeller ret realistisk.

ønsket:
0
Populære indlæg
Åndelig udvikling
mad
y