sql >> Database teknologi >  >> RDS >> Database

DBMS-tutorial:Et komplet crash-kursus om DBMS

Som I alle ved, er Database Management System (DBMS) software, der bruges til at administrere databaser. Så denne artikel om DBMS Tutorial vil hjælpe dig med at forstå både grundlæggende og avancerede koncepter for DBMS .

Emnerne diskuteret i denne artikel er:

    • Hvad er en database?
      • Karakteristika, fordele, applikationer og ulemper
    • DBMS
    • Arkitektur
    • Komponenter
    • Typer
    • Datamodeller
    • Nøgler
    • Normalisering

    Lad os begynde!

    Hvad er en database?

    Databasen er en organiseret samling af strukturerede data for at gøre det let tilgængeligt, overskueligt og opdateret. Med enkle ord kan man sige en database på et sted, hvor dataene er gemt. Den bedste analogi er biblioteket. Biblioteket rummer en enorm samling af bøger af forskellige genrer, her er biblioteket database og bøger er data.

    I den indledende fase af computeræraen blev data indsamlet og gemt på bånd, som for det meste var skrivebeskyttede enheder, hvilket betød, at når først data blev gemt på det, kunne det aldrig blive Læs igen. De var langsomme og omfangsrige, og snart indså computerforskere, at de havde brug for en bedre løsning på dette problem.

    Tilsammen omtales dataene og DBMS, sammen med de applikationer, der er knyttet til dem, som et databasesystem, ofte forkortet til blot en database.

    Udvikling af database

    • Databaser har udviklet sig siden deres start i begyndelsen af ​​1960'erne.
    • I 1980'erne, Relationelle databaser blev populær, efterfulgt af objektorienterede databaser i 1990'erne.
    • Senere har NoSQL-databaser opstod som et svar på væksten af ​​internettet og behovet for hurtigere hastighed og behandling af ustrukturerede data.
    • I dag bryder Cloud-databaser og selvkørende databaser ny vej, når det kommer til, hvordan data indsamles, opbevares, administreres og bruges.

    'Databaser' er et meget omfattende emne. Så det er en meget kedelig opgave at dække emnerne under dette emne.

    DBMS-vejledning:Databasens egenskaber

    Nu inkluderer de vigtigste egenskaber ved en database:

    • Den bruger et digitalt lager etableret på en server til at gemme og administrere oplysningerne.|
    • Databasen bør være i stand til at gemme alle slags data, der findes i denne virkelige verden.
    • Det kan give et klart og logisk overblik over den proces, der manipulerer data.
    • Vigtigst er det, at databasen bruges til at give datasikkerhed.
    • DBMS indeholder alle automatiske sikkerhedskopierings- og gendannelsesprocedurer.
    • Den indeholder også ACID-egenskaber, der holder data i en sund tilstand i tilfælde af fejl.
    • Database kan reducere det komplekse forhold mellem data.
    • Det bruges også til at understøtte manipulation og behandling af data.
    • Du kan se databasen fra forskellige synspunkter i henhold til de krav, som er specificeret af brugeren.

      Nu, når vi taler om applikationerne i en database, så ser vi præcis, hvor du kan gøre brug af databasen.

      DBMS-vejledning:Databaseapplikationer

      Databaseapplikationer er softwareprogrammer, der er designet til at indsamle, administrere og formidle information meget effektivt. Så mange små virksomhedsejere opretter simple databaser såsom kundekontakt og mailinglister med nem at bruge software, og der er virksomheder, der bruger forhåndsdatabaserne til datamanipulation.

      • Regnskabsapplikationer
      • Webapplikationer
      • CRM-applikationer

      Regnskabsapplikationer

      Når vi taler om regnskabssystemet, er det en brugerdefineret databaseapplikation, der bruges til at administrere økonomiske data.

      • Du kan gøre brug af de brugerdefinerede formularer, der bruges til at registrere aktiver, passiver, inventar og transaktioner mellem kunder og leverandører.
      • Få overblikket over de genererede resultatopgørelser, balancer, indkøbsordrer og fakturaer er tilpassede rapporter baseret på oplysninger, der er indtastet i databasen.
      • Regnskabsapplikationer kører på en enkelt computer, der er egnet til en lille virksomhed eller i et netværksdelt miljø for at imødekomme behovene fra flere afdelinger og lokationer i større organisationer.

      Webapplikationer

      Mange webapplikationer bruger også databaser til at gemme data. Dette kan være fortrolige oplysninger om en organisation eller nogle private oplysninger om brugeren. Database bruges til at gemme data i sekventiel rækkefølge og hjælper dig med at få adgang til data, når det er nødvendigt.

      • Mange webapplikationer oprettes også ved hjælp af databaseapplikationer. Der er websteder, der også kombinerer et regnskabsdatabasesystem til at registrere salgstransaktioner og en CRM-databaseapplikation til at inkorporere feedback og skabe positiv kundeoplevelse. Vi vil diskutere CRM-databasen i det næste emne.
      • Den mest populære webbaserede applikation "Facebook" er i bund og grund en database bygget på "MySQL ” databasesystem og er en indikation af den stigende brug af databaseapplikationer som grundlag for webbaserede applikationer.

      CRM-applikationer

      Et Customer Relationship Management System (CRM) er en perfekt databaseapplikation, der er blevet skræddersyet til at styre marketing-, salgs- og supportrelationerne mellem en virksomhed og dens kunder.

      Hovedmålet er at maksimere antallet af salg, minimere omkostninger og fremme strategiske kunderelationer.

      Fordele

      • Reduceret dataredundans.
      • Der er også færre fejl og øget konsistens.
      • Nemmere dataintegritet fra applikationsprogrammer.
      • Forbedret dataadgang til brugere gennem brug af værts- og forespørgselssprog.
      • Datasikkerheden er også forbedret.
      • Reducerede omkostninger til dataindtastning, lagring og hentning.

      Ulempe

      • Kompleksitet :Databaser er komplekse hardware- og softwaresystemer.
      • Omkostninger :Det kræver betydelige forudgående og løbende økonomiske ressourcer.
      • Sikkerhed: De fleste førende virksomheder har brug for at vide, at deres databasesystemer sikkert kan gemme data, herunder følsomme medarbejder- og kundeoplysninger.
      • Kompatibilitet :Der er en risiko for, at et DBMS muligvis ikke er kompatibelt med en virksomheds driftskrav.

      Nu hvor du har fået en idé om, hvordan databasen fungerer, lad os gå videre og forstå databasestyringssystemet.

      DBMS

      Et Database Management System (DBMS) er en software, der bruges til at administrere databasen. Den modtager instruktion fra en databaseadministrator (DBA) og instruerer derfor systemet i at foretage de tilsvarende ændringer. Disse er grundlæggende kommandoer, der bruges til at indlæse, hente eller ændre eksisterende data fra systemet.

      Databasestyringssystemer har også til formål at lette et overblik over databaserne ved at tilbyde en række administrative operationer såsom tuning, ydeevneovervågning og backupgendannelse.

      Databasestyringssystemer giver brugerne mulighed for at gøre følgende:

      • Definer data – Giver brugere mulighed for at oprette, ændre og slette de definitioner, der definerer databasens organisation.
      • Opdater data – Giver adgang til brugerne til at indsætte, ændre og slette data fra databasen.
      • Hent data – Giver brugere mulighed for at hente data fra en database baseret på kravet.
      • Administration af brugere – Registrerer brugere og overvåger deres handlinger, håndhæver datasikkerhed, opretholder dataintegritet, overvåger ydeevne og håndterer samtidighedskontrol.

      Karakteristika

      • For at begrænse få adgang til tilladelser af brugere
      • Giv flere visninger af det enkelte databaseskema
      • Lagerer sikkerhed og fjerner dataredundans
      • Tillader flerbrugertransaktion behandling og deling af data
      • Følger ACID ejendom
      • Tilbyder både fysisk og logisk datauafhængighed

      Lad os nu se, hvordan du opretter en database.

      Vi bruger CREATE DATABASE-sætningen til at oprette en ny database.

      Syntaks:

      CREATE DATABASE databasename;

      Eksempel:

      CREATE DATABASE College;

      Så databasen med navn College vil blive oprettet. Så enkelt kan du oprette en database.

      Lad os nu forstå DBMS-applikationerne.

      Applikationer af DBMS

      • Bank
      • Flyselskaber
      • Finans
      • Salg og fremstilling
      • Universiteter

      Disse er nogle af de bemærkelsesværdige applikationer af DBMS. Lad os nu gå videre og forstå funktionerne i DBMS.

      DBMS-vejledning:Funktioner

      • Minimum duplikering: Der er mange brugere, der bruger databasen, så chancerne for dataduplicity er meget høje. I databasestyringssystemet deles datafiler, hvilket igen minimerer dataduplikering.
      • Spar lagerplads: DBMS har meget at spare, men integrationen af ​​data i et DBMS sparer meget mere plads.
      • Omkostningseffektiv: Mange virksomheder betaler så mange penge for at gemme deres data. Hvis de har formået at gemme data, vil det spare deres omkostninger ved dataindtastning.
      • Sikkerhed: DBMS gemmer alle datafiler permanent, og der er ingen chance for, at du kan miste nogen data. For eksempel hvis du tilfældigvis mister nogle data, så er der også en backup- og gendannelsesmetode, der kan gemme organisationens datafiler. Så DBMS er meget sikkert.

      Lad os nu forstå arkitekturen af ​​DBMS.

      Arkitektur

      Design af DBMS afhænger hovedsageligt af dets arkitektur. Arkitekturen kan enten være centraliseret eller decentraliseret eller hierarkisk. Det kan ses som en enkelt- eller multi-tier. Du kan også have en n-tier arkitektur, der opdeler hele systemet i relaterede, men uafhængige n moduler, der uafhængigt kan ændres, ændres, ændres eller udskiftes.

      Du kan have:

      • Enkeltlag
      • To-lags
      • Tre-lag

      Enkeltlag

      Her er en database direkte tilgængelig for brugeren. Det betyder, at brugeren kan opholde sig direkte på et DBMS og bruge det. Eventuelle ændringer her vil blive udført direkte på selve databasen. Og det giver ikke et praktisk værktøj til slutbrugere.

      1-tier bruges, hvor klienten, serveren og databasen alle bor på den samme maskine. Hver gang du installerer en database i dit system og får adgang til SQL-forespørgsler, er det 1-lagsarkitekturen, der bruges. Men denne arkitektur bruges sjældent i produktionssektionen.

      2-lags

      To-lags arkitekturen er den samme som den grundlæggende klient-server. I denne arkitektur kan applikationer på klientsiden kommunikere direkte med databasen på serversiden. For at kommunikere med DBMS'en etablerer klientsiden applikationen en forbindelse med serversiden.

      Når klientmaskinen anmoder om at få adgang til databasen på serveren ved hjælp af SQL , udfører serveren anmodningen på databasen og returnerer resultatet tilbage til klienten.

      Tre-lag

      3-lags arkitekturen indeholder et lag mellem klienten og serveren. Her kan klienten ikke kommunikere direkte med serveren. Slutbrugeren har ingen idé om applikationsserveren. Databasen har heller ingen idé om nogen anden bruger ud over applikationen.

      Den applikation, der findes på klientenden, interagerer med en applikationsserver, som igen kommunikerer med databasesystemet.

      Det har tre lag eller lag, nemlig præsentationslag, applikationslag og databaselag.

      • Databaseniveau: I dette niveau er en database til stede sammen med dens behandlingssprog (Query). Du har også de relationer, der definerer dataene og deres begrænsninger på dette niveau.

      • Applikationsniveau: Det kaldes også mellemtrinet. Dette niveau består af applikationsserveren og de programmer, der får adgang til databasen. For en bruger viser dette applikationsniveau en abstrakt visning af databasen. I den anden ende er databaseniveauet ikke opmærksom på andre brugere ud over applikationsniveauet. Derfor sidder applikationslaget i midten og fungerer som en formidler mellem slutbrugeren og databasen.

      • Brugerniveau: Dette kaldes også som et præsentationsniveau. Slutbrugerne opererer i dette niveau og ved intet om eksistensen af ​​databasen ud over dette lag. I dette lag, flere visninger af databasen kan leveres af applikationen. Alle visninger genereres af applikationer, der er til stede i applikationsniveauet.

      Nu hvor du har forstået arkitekturen, lad os gå videre og forstå komponenterne i DBMS.

      DBMS-vejledning:Komponenter

      Når vi taler om komponenterne i DBMS, har vi:

      • Hardware

      Dette består af et sæt fysiske elektroniske enheder såsom I/O-enheder, lagerenheder og mange flere. Det giver også en grænseflade mellem computere og systemer i den virkelige verden.

      • Software

      Dette er det sæt programmer, der bruges til at styre og administrere den overordnede database. Det inkluderer også selve DBMS-softwaren. Operativsystemet, netværkssoftwaren, der bruges til at dele data mellem brugerne, applikationsprogrammerne, der bruges til at få adgang til data i DBMS.

      • Data

      Databasestyringssystem indsamler, lagrer, behandler og tilgår data. Databasen indeholder både de faktiske eller operationelle data og metadataene.

      • Procedure

      Dette er reglerne og instruktionerne om, hvordan man bruger databasen til at designe og køre DBMS, for at vejlede de brugere, der driver og administrerer den.

      • Database Access Language

      Det bruges til at få adgang til data til og fra databasen. For at kunne indtaste nye data kræver opdatering eller hentning data fra databaser. Du kan skrive et sæt passende kommandoer i databaseadgangssproget, sende disse til DBMS, som derefter behandler dataene og genererer dem, viser et sæt resultater i en brugerlæsbar form.

      Nu hvor I har forstået komponenterne i en database, lad os gå videre og forstå typerne.

      DBMS-vejledning:typer

      Følgende er de forskellige typer DBMS:

      • Hierarkisk: Denne type DBMS viser en stil af forgænger-efterfølger type forhold. Du kan betragte det som et træ, hvor træets noder repræsenterer poster, og træets grene repræsenterer felter.

      • Relationel database (RDBMS): Denne type har en struktur, som giver brugerne mulighed for at identificere og få adgang til data i relation til et andet stykke data i databasen. Her gemmes dataene i form af tabeller.

      • Netværk: Denne type databasestyringssystem understøtter mange til mange relationer, hvor flere brugerposter kan sammenkædes.
      • Objektorienteret: Den bruger små individuelle software kaldet objekter. Her indeholder hvert objekt et stykke data og instruktionerne for de handlinger, der skal udføres med dataene.

      DBMS-vejledning:Datamodeller

      Datamodeller i DBMS hjælper med at definere, hvordan den logiske struktur af en database er modelleret. Datamodeller er dybest set de grundlæggende enheder, der introducerer abstraktion i DBMS. Disse datamodeller definerer også, hvordan data er forbundet med hinanden, og hvordan de behandles og gemmes inde i systemet.

      Hvorfor har du brug for denne datamodel?

      • Det sikrer, at alle dataobjekter, der kræves af databasen, er nøjagtigt repræsenteret. Udeladelse af data vil til tider føre til oprettelse af defekte rapporter og give forkerte resultater.
      • En datamodel hjælper med at designe databasen på det konceptuelle, fysiske og logiske niveau.
      • Strukturen hjælper med at definere relationstabellerne, primære og fremmednøgler og lagrede procedurer.
      • Det er også nyttigt at identificere manglende og overflødige data.

      Denne datamodel kan yderligere opdeles i disse typer:

      Typer af datamodel

        1. Konceptuel
        2. Fysisk
        3. Logisk

      Lad os nu se, hvordan disse datamodeller fungerer.

      Konceptuel

      Denne type datamodel definerer, hvad systemet indeholder. Den konceptuelle model er skabt af Data Architects generelt. Formålet er at organisere, afgrænse og definere forretningskoncepter og regler.

      Der er 3 grundlæggende stilarter under konceptuelle datamodeller:

      • Enhed
      • Attribut
      • Forhold

      Dette kan omtales som Entity-Relationship Model.

      Entity-Relationship (ER) Model er baseret på ideen om enheder i den virkelige verden og relationer mellem dem. Denne ER-model er bedst brugt til det konceptuelle design af en database.

      Enhed: En enhed i en ER-model er en enhed i den virkelige verden med egenskaber navngivet som Attributter . Hver egenskab er defineret af dens værdisæt kaldet domænerne .
      Overvej f.eks. detaljerne om en elev. Detaljer som navn, alder, klasse, sektion og alle disse kommer under entiteten.

      Forhold: Den logiske tilknytning mellem entiteterne kaldes en R elationship . Disse relationer er kortlagt med enheder på forskellige måder. Kortlægningen (en-til-en, en-til-mange, mange-til-mange) definerer antallet af tilknytninger mellem to enheder.

      Lad os nu forstå den fysiske datamodel.

      Fysisk

      En fysisk datamodel hjælper med at beskrive den databasespecifikke implementering af datamodellen. Den fysiske datamodel tilbyder en abstraktion af databasen og hjælper med at generere skemaet .

      Denne fysiske datamodel hjælper også med at visualisere databasestrukturen. Det hjælper også med at modellere nøgler, begrænsninger, indekser i databasekolonner , triggere og andre RDBMS funktioner.

      Lad os nu forstå den logiske datamodel.

      Logisk

      Logiske datamodeller hjælper med at tilføje yderligere information til de konceptuelle modelelementer. Denne model definerer strukturen af ​​dataelementerne og indstiller også de tilsvarende relationer mellem dem.

      I dette niveau er der ikke defineret nogen primær eller sekundær nøgle, og du skal verificere og justere de forbindelsesdetaljer, der tidligere blev indstillet til relationer.

      Den største fordel ved denne logiske datamodel er at danne grundlaget for den fysiske model.

      Jeg håber, det er klart for jer.

      Fortsæt med DBMS-vejledningen, lad os tage et kig på nøglerne i DBMS.

      DBMS-vejledning:nøgler

      Nøgler er det vigtigste koncept i databaser. Nøgler spiller en afgørende rolle i Relationsdatabasen. Dette bruges til at identificere unikke rækker fra tabellen. Det etablerer også forholdet mellem tabeller.

      Hvorfor har du brug for disse nøgler i databasen?

      Svaret på dette ville være,

      • I et program fra den virkelige verden kan en tabel indeholde tusindvis eller endnu flere poster. Desuden kan optegnelserne også duplikeres. Nøgler sikrer, at du entydigt kan identificere en tabelpost på trods af mange udfordringer.
      • Tasterne giver dig også mulighed for at etablere en relation og også identificere relationerne mellem tabeller
      • Nøgler hjælper dig også med at håndhæve identitet og integritet i forholdet.
      Typer af nøgler

      DBMS har forskellige nøgler, der har forskellige funktionaliteter.

      • Supernøgle
      • Primær nøgle
      • Kandidatnøgle
      • Udenlandsk nøgle
      • Sammensat nøgle

      Lad os diskutere de mest almindeligt anvendte nøgler i DBMS.

        • Kandidatnøgle: Det minimale sæt af attributter, der unikt kan identificere en tupel, er kendt som en kandidatnøgle. En relation kan indeholde mere end en enkelt kandidatnøgle, hvor nøglen enten er en simpel eller sammensat nøgle.

        • Supernøgle: Sættet af attributter, der unikt kan identificere en tupel, er kendt som Super Key. Så en kandidatnøgle er en supernøgle, men omvendt er det ikke sandt.

        • Primær nøgle: Et sæt attributter, der kan bruges til unikt at identificere hver tupel, er også en primær nøgle. Så hvis der er 3-4 kandidatnøgler til stede i et forhold, så kan én ud af dem vælges som primærnøgle.

      • Alternativ nøgle: Den anden kandidatnøgle end den primære nøgle kaldes som en alternativ nøgle.

      • Udenlandsk nøgle: En attribut, der kun kan tage de tilstedeværende værdier som værdierne af en anden attribut, er fremmednøglen til den attribut, som den refererer til.

      Gå videre til det sidste emne i denne artikel om DBMS-tutorial, lad os lære om normalisering i DBMS.

      Normalisering

      Normalisering er processen med at reducere redundansen af ​​data i tabellen og også forbedre dataintegriteten. Så hvorfor er dette påkrævet? uden normalisering i SQL kan vi stå over for mange problemer som f.eks.

      1. Anomali ved indsættelse :Det opstår, når vi ikke kan indsætte data i tabellen uden tilstedeværelsen af ​​en anden attribut
      2. Opdatering af uregelmæssigheder :Det er en datainkonsistens, der skyldes dataredundans og en delvis opdatering af data.
      3. Sletningsanomali :Det opstår, når visse attributter går tabt på grund af sletning af andre attributter.

      Dette billede nedenfor viser, hvordan normalisering i SQL fungerer.

      Så med dette kommer vi til slutningen af ​​denne DBMS-tutorial. Jeg håber, at I er klar over de emner, der diskuteres i dette selvstudie.

      Hvis du ønsker at lære mere om MySQL og lær denne open source relationsdatabase at kende, så tjek vores MySQL DBA Certification Training som kommer med instruktørledet livetræning og projekterfaring i det virkelige liv. Denne træning vil hjælpe dig med at forstå MySQL i dybden og hjælpe dig med at opnå beherskelse over emnet.

      I tilfælde af forespørgsler kan du lægge dem i kommentarfeltet i DBMS Tutorial, så vender vi tilbage snarest.


      1. Opdel kommaseparerede værdier af en kolonne i række via Oracle SQL-forespørgsel

      2. convert_tz returnerer null

      3. Metoder til indstilling af NLS-parametre og deres prioriteter (Oracle-database)

      4. Grundlæggende om tabeludtryk, del 6 – Rekursive CTE'er