Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • Windows 10
  • Varësia e plotë funksionale e bazës së të dhënave. Varësia funksionale e bazës së të dhënave

Varësia e plotë funksionale e bazës së të dhënave. Varësia funksionale e bazës së të dhënave

Leksionet numër 8-9.

Varësia funksionale. Format normale.

Qëllimi i mësimit: të njohë studentët me përkufizimin e varësisë funksionale të atributeve, me konceptin e normalizimit të marrëdhënies fillestare, të flasë për arsyet që çojnë në nevojën për të normalizuar skedarët e regjistrimeve, të prezantojë mënyra për të siguruar nivelin e kërkuar të normaliteti i tabelës, përcaktoni format normale duke përdorur një shembull specifik.

Varësitë funksionale

Teoria e normalizimit, si teoria e bazës së të dhënave në përgjithësi, bazohet në një aparat matematikor të bazuar në teorinë e grupeve dhe elementet e algjebrës.

Të njëjtat të dhëna mund të grupohen në tabela (marrëdhënie) menyra te ndryshme... Grupimi i atributeve në marrëdhënie duhet të jetë racional (d.m.th., dyfishimi i të dhënave duhet të jetë minimal) dhe procedura të thjeshtuara për përpunimin dhe përditësimin e tyre. Eliminimi i tepricës së të dhënave është një nga detyrat më të rëndësishme në hartimin e bazës së të dhënave dhe sigurohet nga normalizimi.

Normalizimi i tabelave (marrëdhënieve)- ky është një aparat formal i kufizimeve në formimin e tabelave (marrëdhënieve), i cili ju lejon të eliminoni dyfishimin, siguron qëndrueshmërinë e atyre të ruajtura në bazën e të dhënave, zvogëlon kostot e punës për mirëmbajtjen (hyrjen, korrigjimin) e bazës së të dhënave. Procesi i normalizimit konsiston në zbërthimin (zbërthimin) e marrëdhënieve origjinale të bazës së të dhënave në më shumë marrëdhënie e thjeshtë... Çdo hap i këtij procesi e sjell diagramin e marrëdhënieve në forma normale të njëpasnjëshme. Për çdo fazë normalizimi, ka grupe kufizimesh që duhet të plotësojnë marrëdhëniet e bazës së të dhënave. Normalizimi ju lejon të hiqni informacionin e tepërt jo kyç nga tabelat e bazës së të dhënave.

Së pari, le të kujtojmë disa koncepte:

Atribut i thjeshtëështë një atribut vlerat e të cilit janë të pandashme. Me fjalë të tjera, tabela nuk ka fusha të llojit Emri i plotë ose Adresa - ato zbërthehen në fushat Mbiemri, Emri, Patronimi në rastin e parë dhe në fushat Indeks, Qyteti, etj. në rastin e dytë.

Atribut kompleks (i përbërë). fitohet duke kombinuar disa atribute atomike, ndryshe quhet vektoriale ose agregat i të dhënave.

Përkufizimi i varësisë funksionale: Le X dhe Y atributet e disa relacioneve. Nëse në çdo moment të kohës një vlerë arbitrare X korrespondon me një vlerë të vetme Y, atëherë Y është funksionalisht i varur nga X (XY)

Nëse çelësi është një çelës i përbërë, atëherë çdo atribut duhet të varet nga çelësi në tërësi, por nuk mund të jetë funksionalisht i varur nga asnjë pjesë e çelësit të përbërë, d.m.th. varësia funksionale ka formën (X 1, X 2, ..., X)Y.

Varësia funksionale mund të jetë e plotë ose jo e plotë.

Varësia jo e plotë quhet varësia e një atributi jo kyç nga një pjesë e një çelësi të përbërë .


Varësia e plotë funksionaleështë varësia e një atributi jo kyç nga i gjithë çelësi i përbërë, dhe jo nga pjesët e tij.

Përkufizimi i varësisë funksionale kalimtare: Le X, Y, Z- tre atribute të ndonjë relacioni. Në etom XY dhe YZ, por nuk ka korrespondencë të anasjelltë, domethënë Y nuk varet nga Z dhe X nuk varet nga Y. Pastaj ata thonë atë Z varet kalimisht nga X.

Përkufizimi i varësisë me shumë vlera: Le të jenë X dhe Y atribute të ndonjë relacioni. Atributi Y shumohen varet nga atributi X, nëse. çdo vlerë X korrespondon me një grup vlerash Y që nuk shoqërohen me atribute të tjera nga relacioni. Varësitë me shumë vlera mund të jenë "një për shumë" (1: M), "shumë ndaj një" (M: 1) ose "shumë për shumë" (M: M), të shënuara përkatësisht: X => Y, Y<=X и X<=>Y. Për shembull, një mësues jep disa lëndë, dhe çdo lëndë mund të mësohet nga disa mësues, atëherë ekziston një varësi <=> Gjë.

Merrni shembullin e mëposhtëm: Supozoni se për pjesën akademike të fakultetit, është krijuar një bazë të dhënash për mësuesit, e cila përfshin atributet e mëposhtme:

Emri i plotë - mbiemri dhe inicialet e mësuesit (përjashtohen rastësitë e mbiemrave dhe inicialeve).

Pozicioni - pozicioni i mbajtur nga mësuesi.

Paga - paga e mësuesit.

Përvoja - përvojë mësimore. D_Experience - një bonus për vjetërsinë.

Departamenti - numri i departamentit ku është renditur mësuesi.

Lënda - emri i lëndës (disiplinës) që lexohet nga mësuesi.

Grupi - numri i grupit në të cilin mësuesi zhvillon orët.

Lloji i mësimit - lloji i klasave të zhvilluara nga mësuesi në grupin e studimit.

Qëndrimi fillestar MËSUES

Informacioni ka pasur gjithmonë një interes adekuat dinamik. Zhvillimi i gjuhëve të programimit, bazat e të dhënave relacionale të dhënat dhe teknologjia e informacionit ka ndryshuar rrënjësisht përmbajtjen dhe strukturën e interesit. Është zhvilluar një sistem i caktuar i rreptë idesh. Formalizimi, matematika e saktë dhe marrëdhëniet binare janë bërë një fushë e suksesshme dhe me rritje të shpejtë të njohurive dhe përvojës.

Bota natyrore e informacionit nuk e ka ndryshuar dinamikën e saj dhe, duke zhvilluar përmbajtjen dhe strukturën, është ngritur në lartësi të reja. Ka forma të lëmuara dhe nuk ka asgjë në natyrë "drejtkëndëshe"... Informacioni, natyrisht, i jepet vetes formalizimit, por ai ka dinamikë, nuk ndryshojnë vetëm të dhënat dhe algoritmet për përpunimin e tyre, ndryshojnë vetë detyrat dhe fushat e tyre të aplikimit.

Informacion> formalizimi >> të dhëna

Informacioni kthehet në një strukturë informacioni, një bazë të dhënash ...) siç e sheh programuesi. Nuk ka asnjë garanci që ky vizion është i saktë, por nëse programi i tij përmbush detyrën në fjalë, atëherë të dhënat janë paraqitur si të përshtatshme.

Çështja se sa saktë është zyrtarizuar informacioni është çështje kohe. Deri më tani, koncepti i dinamikës (vetë-përshtatja ndaj ndryshimit të kushteve të përdorimit) është vetëm një ëndërr programuese.

Varësia funksionale: " vendimi i duhur= programi (programuesi) "dhe kushti:" detyra e përputhjes së vazhdueshme "janë të vlefshme në shumicën e rasteve, por vetëm në lidhje. Por ky nuk është lloji i bazës matematikore që përdoret gjatë krijimit të bazave të të dhënave.

Deklaratë e drejtpërdrejtë: dinamika natyrore dhe e vazhdueshme e informacionit dhe e algoritmeve për zgjidhjen e problemeve është gjithmonë e vlefshme. Dhe këto janë marrëdhënie binare + matematikë strikte + ndërtime të sakta formale, + ...

dhe bazat e të dhënave

Mënyra se si ruhen të dhënat ka qenë prej kohësh e parëndësishme: qoftë ajo RAM ose pajisje e jashtme... Komponenti i harduerit ka arritur një ritëm të qëndrueshëm zhvillimi dhe ofron cilësi të mirë në vëllime të mëdha.

Opsionet kryesore të ruajtjes, të ndryshme në përdorimin e të dhënave:

  • dosjet;
  • Baza e të dhënave.

E para lihet në mëshirën e programuesit (çfarë të shkruani, në çfarë formati, si ta bëni, si të lexoni ...), e dyta menjëherë sjell nevojën për të kuptuar një varësi të thjeshtë funksionale.

Shpejtësia e marrjes dhe shkrimit të informacionit kur punoni me skedarë (me një madhësi të arsyeshme, jo astronomike) është shumë e shpejtë dhe shpejtësia e operacioneve të ngjashme me një bazë të dhënash ndonjëherë mund të jetë dukshëm e ngadaltë.

Përvoja personale dhe inteligjenca kolektive

Në histori ka pasur përpjekje për të shkuar përtej kufijve të arritur, por sot e kësaj dite dominojnë bazat e të dhënave relacionale. Është akumuluar një potencial i madh teorik, praktika e aplikimit është e gjerë dhe zhvilluesit janë shumë të kualifikuar.

Zhvilluesit e bazës së të dhënave imponojnë konceptin e varësisë funksionale ndaj programuesit, edhe nëse ai nuk synon të përdorë përvojën e pasur matematikore dhe logjike të ndërtimit të strukturave komplekse të informacionit, proceset e punës me to, marrjes dhe regjistrimit të informacionit.

Edhe në shumë rast i thjeshtë programuesi varet nga logjika e bazës së të dhënave me cilëndo që ai zgjedh të punojë. Nuk ka dëshirë për të ndjekur kanunet, ju mund të përdorni skedarë, ju merrni shumë skedarë dhe shumë përvojë personale... Do të shpenzohet shumë kohë personale dhe problemi do të zgjidhet për një kohë të gjatë.

Sado komplekse që mund të duken shembujt e varësisë funksionale, nuk është aspak e nevojshme të zhytemi në thellësi të kuptimit dhe logjikës. Shpesh duhet pranuar se mendje kolektive arriti të krijojë baza të shkëlqyera të të dhënave, madhësive të ndryshme dhe funksionalitetin:

  • Oracle solide;
  • MS SQL Server kërkues;
  • MySQL e njohur.

Baza e të dhënave të shkëlqyera relacionale me një reputacion të mirë, të lehtë për t'u përdorur, të shpejtë në duart e duhura. Përdorimi i tyre kursen kohë dhe eliminon nevojën për të shkruar fletët e ardhshme të kodit ndihmës.

Karakteristikat e programimit dhe të dhënave

Për një kohë të gjatë, programimi ka një sëmundje të rishkrimit të vazhdueshëm të diçkaje, duke përsëritur punën e paraardhësve në mënyrë që disi të përshtatet diçka me informacionin e ndryshuar, një detyrë ose kushtet e përdorimit të tij.

E veçanta e varësisë funksionale është se, si në programim, një gabim mund të jetë shumë i shtrenjtë. Detyra është rrallë e lehtë. Zakonisht, gjatë formalizimit të informacionit, merret një paraqitje komplekse e të dhënave. Zakonisht, elementet e tyre theksohen, pastaj lidhen me çelësa në marrëdhënie të caktuara, pastaj rregullohen algoritmet për formimin e tabelave, pyetjet, algoritmet për marrjen e informacionit.

shpeshherë rëndësi të madhe ka një lidhje me kodimin. Jo të gjitha bazat e të dhënave ofrojnë zgjidhje celulare, shpesh mund të hasni se si një MySQL e konfiguruar në mënyrë perfekte, në të cilën ka një duzinë bazash të dhënash, e cila funksionon në mënyrë perfekte dhe të qëndrueshme, e detyron zhvilluesin të krijojë një bazë të dhënash të njëmbëdhjetë të ngjashme me ato që tashmë janë atje.

Ka raste kur hostimi i përbashkët kufizon funksionalitetin PHP dhe kjo lë gjurmë në programimin e aksesit në bazën e të dhënave.

V programim modern përgjegjësia për algoritmin e programit është e barabartë me përgjegjësinë për krijimin e modelit të të dhënave. Gjithçka duhet të funksionojë, por jo gjithmonë duhet të zhyteni në teori.

DB: Varësia e thjeshtë e të dhënave

Para së gjithash, koncepti i një baze të dhënash është njëkohësisht një bazë të dhënash si një sistem kontrolli (për shembull, MySQL) dhe një strukturë e caktuar informacioni që pasqyron të dhënat e detyrave dhe lidhjet midis tyre. Një Baza e të dhënave MySQL"Mban" në vetvete aq struktura informacioni sa të nevojshme për fusha të ndryshme aplikimi. Një Baza Oracle mund të sigurojë proceset e informacionit kompani e madhe ose një bankë, për të monitoruar sigurinë dhe sigurinë e të dhënave në niveli më i lartë të vendosura në shumë kompjuterë të vendosur në distancë të ndryshme, në ambiente të ndryshme instrumentale.

Në përgjithësi pranohet se qëndrimi është themelor në modeli relacional... Një lidhje elementare është një grup kolonash me emra dhe rreshta me vlera. Klasike "drejtkëndësh"(tabela) - arritje e thjeshtë dhe efektive e përparimit. Kompleksitetet dhe varësitë funksionale të bazës së të dhënave fillojnë kur "Drejtkëndëshat" fillojnë të hyjnë në marrëdhënie me njëri-tjetrin.

Emri i secilës kolonë në secilën tabelë duhet të jetë unik në kontekstin e detyrës. Një dhe e njëjta e dhënë nuk mund të jetë në dy tabela. Njihni kuptimin e koncepteve:

  • "Përcaktoni entitetet";
  • "Eliminimi i tepricës";
  • "Rregullo marrëdhënien";
  • "Siguroni besueshmëri".

Një domosdoshmëri elementare për përdorimin e një baze të dhënash dhe ndërtimin e një modeli të dhënash për një detyrë specifike.

Një shkelje e ndonjë prej këtyre koncepteve është efikasiteti i ulët i algoritmit, kampionimi i ngadaltë i të dhënave, humbja e të dhënave dhe probleme të tjera.

Varësia funksionale: logjika dhe kuptimi

Ju nuk keni nevojë të lexoni për disa relacione, për faktin se një funksion është një korrespondencë e një grupi argumentesh me një grup vlerash, dhe një funksion nuk është vetëm një formulë ose një grafik, por mund të specifikohet nga një grup vlerash - një tabelë.

Nuk është e nevojshme, por nuk është aspak e dëmshme të përfaqësohet varësia funksionale si:

F (x1, x2,…, xN) = (y1, y2,…, yN).

Por është e domosdoshme të kuptohet që hyrja është një tabelë, dalja është gjithashtu një tabelë, ose zgjidhje konkrete... Në mënyrë tipike, një varësi funksionale vendos logjikën e marrëdhënieve midis tabelave, pyetjeve, privilegjeve, nxitësve, procedurave të ruajtura dhe pikave të tjera (përbërësve) të bazës së të dhënave.

Zakonisht, tabelat konvertohen në njëra-tjetrën, pastaj në rezultat. Por përdorimi i varësisë funksionale nuk kufizohet vetëm në një ide të tillë. Vetë programuesi ndërton pamjen e tij të figurës së të dhënave, struktura e informacionit... nuk ka rëndësi si e quani, por nëse funksionon në një bazë të dhënash specifike, ajo duhet të ndërtohet sipas logjikës së saj, të ketë parasysh kuptimin e saj dhe dialektin e gjuhës së përdorur, zakonisht SQL.

Mund të argumentohet se vetitë e varësive funksionale të bazës së të dhënave janë të disponueshme përmes dialektit të përdorur Gjuha SQL... Por është shumë më e rëndësishme të kuptohet: pas të gjitha uljeve dhe uljeve të zhvillimit, nuk mbijetuan aq shumë baza të dhënash, por ka shumë dialekte të kësaj gjuhe dhe veçori strukturat e brendshme edhe në baza.

Excel i vjetër i mirë

Kur kompjuteri u shfaq me anën pozitive, bota u nda menjëherë në programues dhe përdorues. Si rregull, të parat përdorin:

  • PHP, Perl, JavaScript, C ++, Delphi.
  • MySQL, Oracle, Visual FoxPro.
  • fjalë.
  • Excel.

Disa përdorues arrijnë të krijojnë vetë bazat e të dhënave (pa ndihmën e programuesve) në Word - një marrëzi e vërtetë.

Përvoja e përdoruesve në Excel në krijimin e bazave të të dhënave është praktike dhe interesante. E rëndësishme është që Excel në vetvete është funksional, plot ngjyra dhe praktik.

Ideja tabelare përcaktoi qartë dhe lehtë konceptin e varësisë funksionale, por secila bazë e të dhënave ka nuanca. Secili ka "fytyrën" e vet, por të gjithë nga Excel në Oracle manipulojnë me katrorë të thjeshtë, domethënë tabela.

Nëse marrim parasysh se Excel nuk është fare një bazë të dhënash, por shumë përdorues (jo programues) e përdorin atë në këtë mënyrë, dhe Oracle është arritja më komplekse dhe më e fuqishme e një ekipi të madh zhvilluesish në fushën e bazave të të dhënave, atëherë bëhet e natyrshme që të pranoni që një bazë të dhënash është një përfaqësim për të cilin një programues (ekip) specifik detyrë specifike dhe zgjidhjen e saj.

Çfarë është varësia funksionale, me çfarë, ku, pse ... është e qartë vetëm për autorin ose një grup prej tyre.

Rreth Ku shkojnë Marrëdhëniet Relacionale

Progresi shkencor dhe teknologjik është një procedurë shumë e dhimbshme, dhe në disa vende mizore. Nëse ju kujtohet se si filluan bazat e të dhënave, çfarë është * .dbf, si e kanë quajtur kibernetikën, atëherë ata ranë në dashuri me shkencën kompjuterike dhe filluan të krijojnë pengesa për lëvizjen teknologjisë së lartë në nivel vendi, bëhet e qartë pse bazat e të dhënave relacionale janë kaq të forta dhe të mira. Pse stil klasik programimi jeton edhe sot e kësaj dite, dhe programimi i orientuar nga objekti thjesht vlerësohet, por ende nuk dominohet.

Sado e bukur varësia funksionale në kontekstin e matematikës:

Kjo nuk është një marrëdhënie binare, më saktë, është një arsye për të rimenduar idenë e vendosjes së marrëdhënieve midis shumë atributeve, për të eksploruar marrëdhëniet "një me shumë", "shumë me një", "shumë për shumë" ose "shumë". në përgjithësi, por disa në veçanti”.

Mund të mendoni për një larmi të madhe opsionesh marrëdhëniesh. Kjo është matematikë me logjikë, dhe është strikte! Informacioni është matematika e tij, e veçantë. Në të, mund të flitet për formalitet vetëm me një minus shumë të madh.

Ju mund të zyrtarizoni punën e departamentit të personelit, të shkruani një sistem të automatizuar kontrolli për nxjerrjen e vajit ose prodhimin e qumështit, bukës, të bëni një mostër në bazë e madhe Google, Yandex ose rambler, por rezultati do të jetë gjithmonë statik dhe çdo moment i kohës është i njëjtë!

Nëse varësia funksionale = logjikë e rreptë dhe matematikë = bazë për bazat e të dhënave, atëherë për çfarë lloj dinamike mund të flasim. Çdo vendim do të jetë formal, çdo model formal i të dhënave + algoritëm rigoroz = një zgjidhje e saktë dhe e paqartë. Informacioni dhe fushëveprimi i çdo programi është gjithmonë në ndryshim.

Mostra motor kërkimi në të njëjtën frazë kërkimi nuk mund të jetë e njëjtë në një ose dy orë dhe, pa mëdyshje, në një ditë - nëse fraza e kërkimit i referohet fushës së informacionit në të cilën numri i faqeve, burimeve, njohurive dhe elementëve të tjerë po ndryshon vazhdimisht.

Edhe nëse programi është thjesht matematikor dhe baza e të dhënave të tij as që mendon për dinamikën, çdo gjë është gjithmonë linja... Dhe linja ka një gjatësi. Dhe nuk mund të jetë pafund. Nuk mund të jetë as një variabël, vetëm një ndryshore e kushtëzuar. Ndër të tjera, çdo bazë të dhënash me aparatin e saj matematikor dhe binar-burokratik imponon shumë formalitete dhe kjo është shpejtësia + cilësia e përzgjedhjes dhe e përpunimit të informacionit.

Dhe nëse disa fusha në bazën e të dhënave janë numra, veçanërisht ato reale, atëherë do të shtohen kufizimet: numri i biteve, prania e shkronjës "e", formati i prezantimit - me pak fjalë, kudo dhe gjithmonë kemi të rëndësishme. Karakteristikat e varësisë funksionale të bazës së të dhënave: vargje me gjatësi të ndryshueshme me kusht me shumë formalitete binare dhe kufizime të rrepta matematikore.

Nëse ndryshoni tonin dhe dëgjoni pulsin e dinamikës, atëherë gjithçka mund të pikturohet në objekte. Si përafrim i parë, emri i një kolone në tabelë është një objekt, lista e emrave është gjithashtu një objekt, me pak fjalë, një tabelë është një objekt kokë dhe përmban emrat e kolonave në kokë. Dhe kapaku mund të mos jetë fare ...

Por mund të ketë rreshta në tabelë. Dhe mund të ketë vlera në varg. Dhe pse duhet të ketë gjithmonë të njëjtin numër të tyre. Tabela e plotë katrore- kjo është një e veçantë, dhe në shumicën e rasteve, private.

Nëse përfaqësoni të gjitha strukturat në bazën e të dhënave si objekte, atëherë, ndoshta, nuk do t'ju duhet të ndërtoni marrëdhënie të rrepta binare. Kjo ka një kuptim të natyrshëm dhe real, vetëm sepse, sipas logjikës objektive (padyshim jo matematikore), pasqyron dinamikën e informacionit dhe mjedisin në të cilin ekzistojnë problemet.

Atributi B i varur funksionalisht nga atributi A, nëse saktësisht një vlerë B korrespondon me secilën vlerë të A.

Emërtimi: A → B. Kjo do të thotë se në të gjitha tupat me vlerë të njëjtë për atributin A, atributi B do të ketë gjithashtu të njëjtën vlerë.

Nëse ekziston një varësi funksionale e formës A → B dhe B → A, atëherë midis A dhe B ekziston korrespondencë një me një, ose varësia funksionale... O

Emërtimi: A↔B ose B↔A.

Nëse lidhja është në 1NF, atëherë të gjitha atributet jo kyçe varen funksionalisht nga çelësi me shkallë të ndryshme varësie.

Varësia e pjesshme(varësia e pjesshme funksionale) - varësia e një atributi jo kyç nga një pjesë e një çelësi të përbërë.

Varësia e plotë funksionale- varësia e një atributi jo kyç nga i gjithë çelësi i përbërë.

Varësia kalimtare

Atributi C varet nga atributi A në mënyrë kalimtare(ekziston varësi kalimtare), nëse plotësohen kushtet A → B dhe B → C për atributin А, В, С, nuk ka lidhje të anasjellta.

Varësia e shumëfishtë

Në lidhje me R, atributi B shumohen varet nga atributi A, nëse secila vlerë e A korrespondon me një grup vlerash të B që nuk lidhen me atributet e tjera të R.

Emërtimet: A => B, A<=B, A<=>B.

Atribute të pavarura reciproke

Quhen dy ose më shumë atribute të pavarura reciprokisht nëse asnjë nga këto atribute nuk është funksionalisht i varur nga atributet e tjera.

Emërtimet: А  → В, А = В.

Format normale:

    E para formë normale (1NF). Një raport është në 1NF nëse të gjitha atributet e tij janë të thjeshta (kanë një vlerë të vetme).

    Forma e dytë normale(2NF). Një marrëdhënie është në 2NF nëse është në 1NF dhe çdo atribut jo kyç është funksionalisht i varur nga një çelës primar (i përbërë).

    Forma e tretë normale(3NF). Një marrëdhënie është në 3NF nëse dhe vetëm nëse të gjitha atributet e marrëdhënies janë reciprokisht të pavarura dhe plotësisht të varura nga çelësi primar.

    Boyes-Codd formë normale(NFBK). Një marrëdhënie është në NFBK nëse është në 3NF dhe nuk ka varësi të çelësave (atribute kyçe të përbëra) nga atributet jo kyç në të.

    Forma e katërt normale(4NF). Një marrëdhënie është në 4NF nëse dhe vetëm nëse ka një marrëdhënie me shumë vlera A => B, dhe të gjitha atributet e tjera të marrëdhënies varen funksionalisht nga A.

    Forma e pestë normale(5NF). Një marrëdhënie është në 5NF nëse është në 4NF dhe plotëson varësitë e lidhjes në lidhje me projeksionet e saj.

    Forma e gjashtë normale(6NF). Raporti është në 6NF nëse dhe vetëm nëse nuk mund t'i nënshtrohet dekompozimit të mëtejshëm pa humbje.

    Sigurimi i qëndrueshmërisë dhe integritetit të të dhënave në bazën e të dhënave

Përgjigju :

Integriteti- kjo është një veti e bazës së të dhënave, që do të thotë se ajo përmban informacion të plotë, të qëndrueshëm dhe që pasqyron në mënyrë adekuate të fushës së temës.

Të dallojë:

    Integriteti fizik- Disponueshmëria akses fizik ndaj të dhënave dhe faktit që të dhënat nuk humbasin.

    Integriteti logjik- mungesa e gabimeve logjike në bazën e të dhënave, të cilat përfshijnë shkelje të strukturës së bazës së të dhënave ose objekteve të saj, fshirje ose ndryshim lidhjet e vendosura ndërmjet objekteve etj.

Ruajtja e integritetit të bazës së të dhënave përfshin:

    Kontrolli i integritetit (kontrolli)

    Rimëkëmbja në rast të zbulimit të mospërputhjeve në bazën e të dhënave.

Gjendja integrale vendoset duke përdorur kufizimet e integritetit(kushtet që duhet të plotësojnë të dhënat). Dy lloji i kufizimeve të integritetit:

    Vlerat e atributeve të marrëdhënieve kufizuese. për shembull: Kërkesa e vlerave të pavlefshme NULL, papranueshmëria e vlerave të dyfishta në atribute, kontrolli i përkatësisë së vlerave të atributeve të një diapazoni të caktuar.

    Kufizimet Strukturore në Tuples Relacioni... Përcakton kërkesat integriteti i entitetit dhe integriteti i lidhjes.

Kërkesa integriteti i entitetit eshte ajo çdo tufë e një relacioni duhet të jetë e ndryshme nga çdo tufë tjetër e kësaj relacioni, me fjalë të tjera, çdo lidhje duhet të ketë çelesi primar.

Kërkesa integriteti i lidhjesështë se për çdo vlerë të çelësit të huaj të tabelës mëmë, duhet të ketë një rresht në tabelën fëmijë me të njëjtën vlerë të çelësit primar.

    Metoda e marrëdhënies entitet

Përgjigju :

Metoda e marrëdhënies entitet(metoda "ER-diagrams") është një metodë e bazuar në përdorimin e diagrameve, të quajtura përkatësisht diagrame të instancës ER dhe diagrame të tipit ER.

Konceptet bazë

ThelbiËshtë një objekt, informacioni për të cilin ruhet në bazën e të dhënave.

atributËshtë pronë e një entiteti.

Çelësi i entitetitËshtë një atribut (bashkësi atributesh) që përdoret për të identifikuar një shembull entiteti.

Lidhje ndërmjet subjekteveËshtë marrëdhënia ndërmjet atributeve të këtyre entiteteve.

Mjete grafike përdoret për të marrë qartësi dhe lehtësi në dizajn:

    DiagramëER-kopje;

    DiagramëER-lloj ose ER-diagramë.

Në bazë të analizës së diagrameve ER, formohet marrëdhënia e bazës së të dhënave të projektuar. Kjo merr parasysh shkallën e marrëdhënies ndërmjet subjekteve dhe klasës së tyre të përkatësisë.

Shkalla e lidhjes- kjo është një karakteristikë e marrëdhënies ndërmjet subjekteve (1: 1, 1: M; M: 1; M: M).

Klasa e përkatësisë subjektet mund të jenë: të detyrueshme dhe opsionale.

E detyrueshme- nëse të gjitha instancat e subjektit marrin pjesë domosdoshmërisht në marrëdhënien e konsideruar.

Fakultative- jo të gjitha rastet janë të përfshira në marrëdhënien në fjalë.

    Fazat e projektimit të bazës së të dhënave

Përgjigju :

I... Dizajni i konceptit- mbledhja, analiza dhe redaktimi i kërkesave të të dhënave.

Synimi: krijim model konceptual të dhëna të bazuara në të kuptuarit e përdoruesit për fusha lëndore.

Procedurat:

    Përkufizimi i subjekteve dhe dokumentacioni i tyre;

    Përcaktimi i marrëdhënieve ndërmjet subjekteve dhe dokumentacioni i tyre;

    Krijimi i një modeli domeni;

    Përcaktimi i vlerave të atributeve;

    Përcaktimi i çelësave kryesorë për entitetet.

II... Dizajn logjik- bazuar në modelin konceptual, krijohet një strukturë e të dhënave.

Synimi: transformimi i modelit konceptual bazuar në modelin e përzgjedhur të të dhënave në një model logjik, i pavarur nga veçoritë e DBMS-së që përdoret në të ardhmen për zbatimin fizik të bazës së të dhënave.

Procedurat:

    Zgjedhja e një modeli të dhënash;

    Përcaktimi i një grupi tabelash dhe dokumentimi i tyre;

    Normalizimi i tabelave;

    Përcaktoni dhe dokumentoni kërkesat për ruajtjen e integritetit të të dhënave.

III... Dizajni fizik- përcaktimi i veçorive të të dhënave dhe metodave të aksesit.

Qëllimi: përshkrimi i një zbatimi specifik të bazës së të dhënave, vendosja në memorie të jashtme kompjuter.

Procedurat:

    Dizajni i tabelave të bazës së të dhënave;

    Dizajn organizimi fizik DB;

    Zhvillimi i një strategjie për mbrojtjen e bazës së të dhënave.

    Cikli jetësor i bazës së të dhënave

Përgjigju :

Cikli jetësor i DBËshtë procesi i projektimit, zbatimit dhe mirëmbajtjes së sistemeve të bazës së të dhënave.

Fazat e ciklit jetësor të bazës së të dhënave:

    Analiza- analiza e fushës lëndore dhe identifikimi i kërkesave për të, vlerësimi i rëndësisë së sistemit.

    Dizajn- krijimi i një logjike Strukturat e DB, pershkrim funksional modelet e programit dhe kërkesat për informacion.

    Zbatimi- Zhvillimi i softuerit për bazat e të dhënave, testimi është në proces.

    Shfrytëzimi dhe përcjellje.

Fazat e ciklit jetësor të bazës së të dhënave:

    Planifikimi paraprak- planifikimi, ekzekutimi i bazës së të dhënave plan strategjik zhvillimi i bazës së të dhënave (çfarë aplikacionesh përdoren, çfarë funksionesh kryejnë, cilat skedarë janë të lidhur me secilin prej këtyre aplikacioneve dhe cilat skedarë dhe aplikacione të reja janë në zhvillim e sipër).

    Kontrolli i fizibilitetit- verifikimi i fizibilitetit teknologjik, operacional dhe ekonomik.

    Përcaktimi i kërkesave- përzgjedhja e qëllimit të bazës së të dhënave, identifikimi i kërkesave për informacion për bazën e të dhënave, kërkesat për pajisje dhe softuer, përcaktimi i kërkesave të përdoruesit.

    Dizajni i konceptit- krijimi i një skeme konceptuale.

    Zbatimi- sjelljen e modelit konceptual në një bazë të dhënash funksionale.

    Përzgjedhja dhe blerja e DBMS-së së kërkuar.

    Shndërrimi i një modeli konceptual në një model logjik dhe fizik.

    Në bazë të informacionit modeli logjikështë ndërtuar një skemë të dhënash për një DBMS specifike.

    Përcaktohet se cilat procese aplikimi duhet të zbatohen si procedura të ruajtura.

    Zbatoni kufizimet e integritetit të të dhënave.

    Shkaktarët e projektimit.

    Zhvilloni një strategji indeksimi dhe grupimi, bëni një vlerësim madhësive të tavolinës, grupimet dhe indekset.

    Përcaktoni nivelet e aksesit të përdoruesit, zhvilloni dhe zbatoni rregullat e sigurisë.

    Zhvilloni një topologji rrjeti të bazës së të dhënave.

    Krijimi i një fjalori të dhënash.

    Plotësimi i bazës së të dhënave.

    Zhvillimi i softuerit të aplikacionit, kontrolli i menaxhimit.

    Trajnimi i përdoruesit.

    Vlerësimi dhe përmirësimi i skemës së bazës së të dhënave.

    Rregullat e formimit të marrëdhënieve

Përgjigju :

Rregullat e formimit marrëdhëniet bazohen në sa vijon:

    Shkalla e lidhjes ndërmjet entiteteve (1: 1, 1: M, M: 1, M: M);

    Klasa e pronësisë së rasteve të njësisë ekonomike (e detyrueshme dhe fakultative).

a. Kur shqyrtojmë anën sasiore të proceseve të ndryshme, pothuajse gjithmonë vërejmë se variablat varen nga njëri-tjetri; për shembull, rruga që përshkon një trup që bie lirshëm në zbrazëti varet vetëm nga koha, presioni në një kazan me avull varet vetëm nga temperatura e avullit.

Thellësia e oqeanit është konstante në një pikë, por në paragrafë të ndryshëmështë e ndryshme, varet vetëm nga dy variabla - nga gjatësia gjeografike dhe gjerësia gjeografike vende.

Lartësia e një peme në rritje varet nga shumë variabla - nga rrezet e diellit, lagështia, sasia e lëndëve ushqyese në tokë, etj.

Shohim që disa variabla ndryshojnë në mënyrë të pavarur, quhen variabla ose argumente të pavarura, ndërsa të tjerët varen prej tyre, quhen funksione.

Vetë varësia quhet funksionale. Nga rruga, varësia funksionale është një nga më koncepte të rëndësishme matematikë.

b. Gjithmonë duhet të dalloni se nga sa variabla të pavarur varet funksioni. Mënyra më e lehtë për të studiuar funksionet e një ndryshoreje, ne do t'i trajtojmë ato në radhë të parë. Studimi i funksioneve të shumë variablave është më i vështirë, por në një mënyrë ose në një tjetër bëhet fjalë për studimin e funksioneve të një ndryshoreje.

c. Nëse duam të shkruajmë matematikisht nga e cila varet ndryshorja y, atëherë do të përdorim shënimin e mëposhtëm:

Kjo hyrje lexohet kështu:

Jo; duhet menduar se shkronja është shumëzuar me, është vetëm një shkurtim i fjalës "funksion", dhe i gjithë regjistrimi është një frazë e shkurtuar (2).

Po kështu, nëse funksioni U varet nga dy argumente, atëherë kjo varësi shënohet si më poshtë:

Këtu shkronjat f, x dhe y gjithashtu nuk janë faktorë.

Është mjaft e qartë se si shënohet funksioni i tre katër ose më shumë argumenteve.

Në vend të shkronjës, më shpesh përdoren shkronja të tjera.

d. Regjistrimet si (1) dhe (3) janë emërtimet më të përgjithshme të funksioneve, pasi ato mund të kuptohen si çdo funksion, dhe për këtë arsye, duke pasur vetëm këto emërtime në duart tona, ne nuk do të mund të mësojmë asgjë për vetitë e këtyre. funksione.

Për të qenë në gjendje të studioni një funksion, duhet ta vendosni atë.

e. Ka shumë mënyra për të përcaktuar një funksion, por të gjitha ato përbëhen në tre lloje kryesore:

1) një funksion mund të specifikohet nga një tabelë e vlerave të tij numerike që korrespondojnë me vlerat numerike të argumentit të tij;

2) funksioni mund të vendoset grafikisht;

3) funksioni mund të vendoset formula matematikore.

f. Ketu jane disa shembuj. Dihet se kur rrotullohet volant, lindin sforcime që tentojnë të thyejnë buzën e tij. Nëse buza e rrotës është bërë nga një material homogjen, atëherë sforcimet varen vetëm nga shpejtësia e rrotullimit. Duke treguar shpejtësinë përmes v, dhe tensionin në buzë përmes, mund ta shkruajmë atë

Teoria e rezistencës së materialeve jep tabelën e mëposhtme për vlerat e funksionit (4), nëse buza është prej çeliku të derdhur:

Këtu v matet në metra për sekondë - në njuton për centimetër katror.

Avantazhi i madh i mënyrës tabelare të krijimit të një funksioni është se numrat në tabelë mund të përdoren drejtpërdrejt për llogaritje të ndryshme.

Disavantazhi është se çdo tabelë nuk jepet për të gjitha vlerat e argumentit, por në disa intervale, kështu që nëse nuk ka vlera funksioni në tabelë, atëherë duhet të merrni një tabelë më të detajuar; nëse kjo e fundit nuk është aty, atëherë duhet të zgjidhni numrin e kërkuar pak a shumë në përputhje me natyrën e ndryshimit të numrave në tabelë,

g. Një disavantazh i madh është se nëse tabela përmban shumë numra, atëherë natyra e ndryshimit të funksionit është e vështirë për t'u kuptuar. Së fundi, disavantazhi i tretë është se studimi i vetive të një funksioni, tabelën e dhënë, e vështirë; për më tepër, vetitë e marra do të jenë të pasakta.

h. I lirë nga dy mangësitë e para mënyrë grafike caktimet e funksioneve.

Për të sqaruar metodën grafike, merrni parasysh shembullin e mëposhtëm.

Nëse ndonjë material i nënshtrohet shtrirjes, atëherë forca e nevojshme për shtrirje do të varet nga lloji i shtrirjes që duhet bërë, domethënë forca është një funksion i zgjatjes. Nëse përqindja e zgjatjes shënohet me X, dhe forca e tërheqjes, e cila zakonisht matet në njuton për centimetër katror, ​​shënohet me, atëherë

Për materiale të ndryshme kjo varësi do të jetë e ndryshme. Marrim boshtet e koordinatave dhe e konsiderojmë k si abshisë, dhe si ordinatë, pastaj për secilën çift të vlerave të tyre marrim një pikë në rrafsh.

Të gjitha këto pika do të vendosen në ndonjë kurbë që ka lloj te ndryshme për materiale të ndryshme. Ka pajisje që vizatojnë kthesa të tilla automatikisht.

Për çelikun e butë, marrim kurbën e mëposhtme (Fig. 31):

k. Siç mund ta shohim, një shtyrje vërtet grafike është e qartë dhe jep vlerat e funksionit për të gjitha vlerat e argumentit. Por pengesa e tretë gjithashtu ndodh këtu. Është ende e vështirë të studiohen grafikisht vetitë e një grupi funksioni.

l. Tani do të tregojmë se si të përcaktojmë një funksion me një formulë. Le të marrim këtë shembull. Zona e rrethit padyshim varet nga rrezja. Nëse rrezja shënohet me i, dhe zona me y, atëherë, siç dihet nga gjeometria, ku është raporti i perimetrit me gjatësinë e diametrit. Shohim që varësia këtu jepet me një formulë matematikore, kështu që mënyra e tretë quhet mënyra matematikore. Një shembull tjetër: gjatësia e hipotenuzës së një trekëndëshi kënddrejtë varet nga gjatësia e të dy këmbëve. Nëse gjatësia e hipotenuzës shënohet me, dhe gjatësia e këmbëve, atëherë me teoremën e Pitagorës do të kemi

Meqenëse ne mund t'i ndryshojmë të dyja këmbët në mënyrë të pavarur nga njëra-tjetra, kemi këtu një shembull të një funksioni me dy argumente, të dhëna matematikisht.

Ka shumë shembuj të funksioneve të përcaktuara matematikisht nga fusha e shkencave të ndryshme.

m. Metoda matematikore ka një avantazh të madh ndaj metodave të tjera të përcaktimit të funksioneve, përkatësisht: për të studiuar funksionet e dhëna matematikisht, mund të përfshihen analiza matematikore.

Përveç kësaj, nëse është e nevojshme, gjithmonë mundeni mënyrë matematikore shndërrohen në tabela. Në të vërtetë, ne kemi të drejtë të vendosim argumentet që duam vlerat numerike dhe përdorni formulën për të llogaritur sa më shumë vlera të funksionit që dëshironi. Kështu, një formulë zëvendëson të gjithë tabelën.

n. Metoda matematikore ka vetëm një pengesë, domethënë, formula nuk jep një paraqitje vizuale të ndryshimit në funksion. Megjithatë, këtë mangësi mund ta plotësojmë gjithmonë, pasi mënyra matematikore e caktimit mund të kthehet gjithmonë në grafike. Kjo bëhet kështu.

o. Nëse kemi një funksion të një ndryshoreje, atëherë përpilojmë një tabelë dhe marrim çdo çift vlerash të argumentit dhe funksionit si koordinata, pas kësaj mund të ndërtojmë më shumë pikë. Të gjitha pikat e marra do të vendosen në ndonjë vijë të lakuar, e cila do të jetë grafiku i funksionit. Nëse kemi një funksion prej dy ose më shumë argumenteve, atëherë ai mund të paraqitet grafikisht. Por kjo tashmë është shumë më e ndërlikuar, dhe për këtë arsye ne do të merremi me këtë çështje pak më vonë.

fq. Të gjitha sa më sipër tregojnë se metoda matematikore e përcaktimit të funksioneve është më e favorshme.

Prandaj, ata gjithmonë përpiqen, nëse një funksion jepet nga një tabelë ose grafik, ta shprehin atë me një formulë. Kjo detyrë është zakonisht shumë e vështirë, por jashtëzakonisht e rëndësishme për shkencat natyrore dhe teknike. Nuk është ekzagjerim të thuhet se të gjitha problemet e mekanikës, shkencës natyrore - shkencave të aplikuara reduktohen në vendosjen dhe studimin e varësive funksionale midis atyre madhësive të ndryshueshme me të cilat merren këto disiplina. Bela arrin t'i shprehë këto varësi funksionale në formula, atëherë shkenca merr një levë të besueshme për zbatimin e gjithë fuqisë së madhe të analizës matematikore dhe përparon shumë në zhvillimin e saj.

Nga ana tjetër, analiza matematikore, duke marrë këtë ushqim të mrekullueshëm, rritet dhe përmirësohet vetë.

q. Meqenëse përkthimi në gjuhën e formulave të varësive funksionale nuk është një detyrë imediate e matematikës, do të supozojmë se funksionet tashmë janë shprehur me formula. Kështu, në të ardhmen do të merremi vetëm me funksionet e dhëna matematikisht.

Shënim: Ky leksion prezanton konceptin e varësisë funksionale. Ky koncept është themeli i teorisë matematikore të bazave të të dhënave relacionale.

Informacion, të dhëna, sisteme informacioni

Kuptimi i varësisë funksionale në të dhëna

Le të lëmë mënjanë për momentin përgjigjen e pyetjes se pse dizajnet relacionale të bazës së të dhënave janë të këqija, d.m.th. pse ju duhet të hartoni një bazë të dhënash relacionale. Le të përpiqemi së pari t'i përgjigjemi pyetjeve "Çfarë është dizajni relacional i bazës së të dhënave? dhe "Cila është baza e procedurave?"

Siç e dini, njësia bazë e paraqitjes së të dhënave në një model relacional është një relacion, i cili përcaktohet matematikisht nga një listë e emrave të atributeve, përndryshe - skema e marrëdhënieve... Ne skene dizajn logjik e një baze të dhënash relacionale, një projektues përcakton dhe ndërton skemat e marrëdhënieve brenda një fushe të caktuar lëndore, domethënë, ai përfaqëson entitetet, grupon atributet e tyre dhe identifikon marrëdhëniet bazë midis entiteteve. Pra, në shumë kuptimin e përgjithshëm Dizajni i një baze të dhënash relacionale konsiston në zgjedhjen e informuar të skemave specifike të marrëdhënieve nga shumë të ndryshme opsionet alternative skemat.

Në praktikë, ndërtimi i një modeli logjik të bazës së të dhënave, pavarësisht nga modeli i të dhënave të përdorur, kryhet duke marrë parasysh dy kërkesa kryesore: eliminimin e tepricës dhe maksimizimin e besueshmërisë së të dhënave. Këto kërkesa rrjedhin nga kërkesa për ndarjen e të dhënave nga një grup përdoruesish. Është e qartë se nuk ka mjete të mjaftueshme formale për të përshkruar të dhënat e kërkuara për të kontrolluar korrektësinë e plotësimit të konstruksioneve të modelit. Zgjedhja e entiteteve, atributeve dhe fiksimi i marrëdhënieve midis entiteteve varet nga semantika e fushës dhe kryhet nga analisti i sistemit në mënyrë subjektive në përputhje me kuptimin e tij personal të specifikave. detyrë e aplikuar... Njerëz të ndryshëm i përcaktojnë dhe i paraqesin të dhënat ndryshe.

Prandaj, çdo njohuri paraprake e kufizimeve të domenit të vendosura në marrëdhëniet ndërmjet të dhënave dhe vlerave të të dhënave, si dhe njohuritë e vetive dhe marrëdhënieve ndërmjet tyre mund të luajë një rol në përmbushjen e kërkesave të mësipërme. Formalizimi i njohurive të tilla a priori për vetitë e të dhënave të domenit të bazës së të dhënave pasqyrohet në koncept varësia funksionale të dhëna, d.m.th. kufizime në marrëdhëniet e mundshme midis të dhënave, të cilat mund të jenë vlerat aktuale të skemës së marrëdhënieve.

Tuplet e marrëdhënieve mund të përfaqësojnë raste entitete domeni ose për të regjistruar marrëdhënien e tyre. Por edhe nëse këto tupa janë të përcaktuara saktë, d.m.th. korrespondojnë me skemën e relacionit dhe zgjidhen nga domenet e vlefshme, jo të gjitha mund të jenë vlera aktuale e ndonjë relacioni. Për shembull, një person rrallë është më shumë se 120 vjeç, ose i njëjti pilot nuk mund të kryejë dy fluturime të ndryshme në të njëjtën kohë. Kufizime të tilla në semantikën e fushës praktikisht nuk kanë asnjë efekt në zgjedhjen e një skeme të caktuar marrëdhëniesh. Ato përfaqësojnë kufizime në llojet e të dhënave.

A priori kufizimet e fushës lëndore në marrëdhëniet e vlerave të atributeve individuale kanë ndikimi më i madh mbi procesin e projektimit skemat relacionale të bazës së të dhënave... Përputhja sipas vlerës së atributeve të caktuara të marrëdhënieve të ndryshme të bazës së të dhënave, d.m.th. varet varësia e vlerave të tyre nga njëra-tjetra, përcakton treguesit e besueshmërisë dhe korrektësinë e të dhënave të ruajtura në përdorimin e tyre kolektiv dhe të qëndrueshëm.

Le të kujtojmë përkufizimin e një funksioni si korrespondencë e një grupi argumentesh me vlera të caktuara nga grupi i përkufizimit të një funksioni dhe metodat e përcaktimit të funksioneve: një formulë, një grafik dhe një numërim (tabela). Nuk është e vështirë ta kuptosh këtë varësia funksionale(ФЗ) mund të përcaktohet në një klasë mjaft të gjerë objektesh. Përkufizimi i një funksioni nuk vendos asnjë kufizim në grupin e argumenteve dhe grupin e vlerave të funksionit, përveç ekzistencës së tyre dhe pranisë së një korrespondence midis elementeve të tyre. Meqenëse FZ mund të vendoset në mënyrë tabelare, dhe tabela është një formë e paraqitjes së marrëdhënies, lidhja midis FZ dhe marrëdhënies bëhet e qartë. Qëndrimi mund të vendoset nga FZ. Ky pohim është ideja e parë (1) konstruktive që qëndron në themel të teorisë dizajni relacional i bazës së të dhënave.

Përkufizimi 1. Le të jetë r (A 1, A 2, ..., A n) skema e relacionit të R, dhe X dhe Y janë nënbashkësi të r. X thuhet se përcakton funksionalisht Y nëse çdo vlerë atributi relacioni tuple nga X përputhet më së shumti një vlerë atributi të së njëjtës relacioni tuple nga Y. Kjo FZ shënohet si.

Siç shihet nga përkufizimi, varësia funksionale e pandryshueshme ndaj ndryshimeve në gjendjet e bazës së të dhënave me kalimin e kohës.

Shembull. Koncepti i varësisë funksionale Le të demonstrojmë konceptin e varësisë funksionale në shembullin e një plani fluturimi në aeroport. FLIGHT_SCHEDULE (Pilot, Fluturim, Data_Nisjes, Koha_Nisjes)

Ivanov 100 8.07 10:20
Ivanov 102 9.07 13:30
Isaev 90 7.07 6:00
Isaev 100 11.07 10:20
Isaev 103 10.07 19:30
Petrov 100 12.07 10:20
Petrov 102 11.07 13:30
Frolov 90 8.07 6:00
Frolov 90 12.07 6:00
Frolov 104 14.07 13:30

Dihet se:

  • çdo fluturim korrespondon kohë të caktuar nisja;
  • vetëm një fluturim është i mundur për çdo pilot, datën dhe orën e nisjes;
  • një pilot specifik është caktuar për një ditë dhe fluturim të caktuar.

Prandaj:

  • "Departure_time" varet funksionalisht nga "Flight": "Fluturimi" -> "Koha_ () nisjes" ;
  • "Fluturimi" varet funksionalisht nga ("Pilot", "Data_Nisja", "Koha_Nisjes"): ("Pilot", "Data_nisjes", "koha_nisjes") -> "Fluturimi" ;
  • "Piloti" është funksionalisht i varur nga ("Fluturimi", "data_nisjes"): ("Fluturimi", "Data_Nisja") -> "Pilot".

Një detyrë e rëndësishme në identifikimin varësitë funksionale mbi atributet e një marrëdhënieje, e cila sipas përkufizimit është një grup, është për të gjetur se cili prej atributeve vepron si argument dhe cili si vlerë e FZ. Çelësat e mundshëm janë kandidatët më të përshtatshëm për argumentet FD, pasi përfaqësojnë tuplet instancat e entitetit që identifikohen nga vlerat e tyre kryesore të atributeve. Për ta thënë troç, varësia funksionale ndodh në një lidhje kur vlerat e një tupleje në një grup atributesh përcaktojnë në mënyrë unike vlerat e një tupleje në një grup tjetër atributesh. Kjo përkufizimi i punës FZ nuk përmban ato elemente formale që bëjnë të mundur përgjigjen e pyetjes "Si të kontrolloni praninë e FZ midis atributeve të një marrëdhënieje?" Formalizmi i kërkuar për këtë na jep përdorimin e operacionet relacionale... Për të marrë një përkufizim zyrtar (të rreptë) të pranisë së një ligji federal në lidhje me operacionet relacionale.

Përkufizimi 2. Le të ketë një lidhje R me një qark r, X dhe Y janë dy nënbashkësi të R. FZ zhvillohet në R nëse grupi ka më së shumti një tup për çdo vlerë x. Kjo FZ quhet edhe F-varësi.

Siç shihet nga përkufizimi, kontrolli formal për praninë e FZ në raport me R konsiston në përzgjedhjen (përzgjedhjen) e raportit sipas vlerave çelësi i mundshëm dhe vërtetimi i ekzistencës së paqartësisë ndërmjet vlerës së saj dhe vlerave të atributeve të tjera.

Algoritmi që kontrollon nëse relacioni R plotëson FZ konsiston në renditjen e relacionit sipas vlerave çelësi i mundshëm dhe vërtetimi i faktit të paqartësisë midis vlerës së tij dhe vlerave të atributeve të tjera. Ky algoritëm është i dobishëm, por ka natyrë ndihmëse.

Është e qartë se nëse semantika e fushës lëndore të bazës së të dhënave është komplekse, atëherë është mjaft e vështirë të kontrollosh tuples për përkatësinë në FZ. Është e vështirë të konstatosh praninë e shumicës varësia funksionale që korrespondon me natyrën e të dhënave në shqyrtim. Me ndihmën e një metode të tillë formale, është e mundur të identifikohen FD që nuk janë reale dhe janë të rastësishme në natyrë. Një projektues i bazës së të dhënave relacionale duhet të jetë i vetëdijshëm për këtë metodë të kontrollit të pranisë së një FZ, por kur dizajnon bazë e re të dhënat, përdorimi i tyre është joefektiv. Mund të jetë i dobishëm në riinxhinierim bazë ekzistuese të dhëna.

Varësitë funksionale janë në fakt deklarata për të gjitha marrëdhëniet në domen. Këto marrëdhënie mund të jenë vlera të skemës r dhe, në thelb, nuk mund të merren me metoda formale. E vetmja mënyrë duke krijuar varësitë funksionale sepse skema e marrëdhënieve r është një studim i semantikës së atributeve entitete domeni... Duke qenë deklarata për subjektet lëndore, ato nuk mund të vërtetohen. Kjo rrethanë krijon në thelb jounikalitetin e përfaqësimit të fushës lëndore nga marrëdhëniet e bazës së të dhënave relacionale.

Është e përshtatshme këtu të hipotezohet pse ka të mira dhe projekte të këqija bazat e të dhënave. Së pari, për shkak të subjektivitetit të qasjeve ndaj analiza e fushës lëndore analistët mund të humbasin FZ të rëndësishme. Kjo mund të çojë në faktin se, kur punoni në një grup, qarqet ekuivalente, projektuesi do të krijojë një dizajn të pakënaqshëm të bazës së të dhënave. Së dyti, jo unike e përfaqësimit të fushës lëndore nga marrëdhëniet çon në problemin e zgjedhjes nga një shumëllojshmëri alternativash. Në këtë rast, skema e bazës së të dhënave e zgjedhur nga grupi i skemave ekuivalente është e saktë, por mund të organizojë të dhëna për përdoruesin në një mënyrë të pazakontë. Së treti, është e mundur të përcaktohen ("përshtatja") skemat e bazës së të dhënave në atë mënyrë që si rezultat i operacioneve me FZ, si FZ ashtu edhe vetë të dhënat do të humbasin.

Artikujt kryesorë të lidhur