Tudd Intuíció, előadás, alapvető eszköze a relációs adatok manipulálása Codd relációs algebra

Ahogy azt az előző fejezetben, a manipuláció összetevője a relációs adatmodell által meghatározott két alapvető mechanizmus manipulálni relációs adatok - alapján halmazelmélet és a relációs algebra alapján matematikai logika (vagy inkább az elsőrendű predikátum kalkulus) relációs kalkulus. Viszont. általában két fajta relációs kalkulus - fogkő esek és domain kalkulus.

Mindegyik mechanizmus van egy fontos jellemzője: zárva vannak fogalma alá a kapcsolatot. Ez azt jelenti, hogy a kifejezés a relációs algebra és relációs kalkulus formula definiált kapcsolat a relációs adatbázisok, és az eredmény az, hogy „számítási” is a kapcsolat (természetesen, erre utal a értékek, attitűdök). Ennek eredményeként olyan kifejezést vagy képlet lehet értelmezni, mint a hozzáállás, amely lehetővé teszi, hogy használja őket más kifejezéseket vagy képleteket.

Mint látni fogjuk, az algebra és kalkulus nagy kifejező erő: egy nagyon összetett adatbázis-lekérdezéseket lehet kifejezni egy kifejezés relációs algebra és a relációs kalkulus formula egy. Ez az oka annak, hogy ilyen rendelkezések szerepelnek a relációs adatmodell. Egy adott relációs adatbázis manipuláció nyelv az úgynevezett relációs-teljes. Ha bármely kérésére megfogalmazott segítségével az egyik vagy relációs algebrai kifejezések audio képletű relációs kalkulus. Meg lehet megfogalmazni a segítségével az üzemeltető a nyelvet.

Ismert (és nem fogunk bizonyítani), hogy a mechanizmusok a relációs algebra és a relációs kalkulus egyenértékűek, azaz a. E., For semmilyen elfogadható kifejezéseket relációs algebra lehet építeni az egyenértékű (t. E. azonos eredmény) képlet relációs kalkulus és fordítva. Miért, a relációs adatmodell tartalmazza a fenti két mechanizmus?

Az a tény, hogy szintjében különböznek az eljárási. A relációs algebra kifejezések épülnek algebrai műveletek (magas szint), és csak által értelmezett aritmetikai és logikai kifejezések. kifejezése relációs algebra mint eljárási értelmezést. Más szóval, a lekérdezés. nyelve a relációs algebra. Ez lehet számítani végrehajtása alapján az elemi algebrai műveletek alapján elsőbbséget, és a lehető zárójelek jelenlétével. Mert egyértelmű képlet relációs kalkulus számítógép értelmezést. Általánosságban elmondható, hogy nincs. A képlet csak beállítja a teljesítendő feltételeket a sorokat kapott kapcsolatokat. Ezért a relációs kalkulus nyelv nagyrészt nem az eljárási, valamint a deklaratív.

Mivel a mechanizmusok relációs algebra és a relációs kalkulus egyenértékűek, egy adott helyzetben, hogy teszteljék a fokát relationality a nyelvi adatbázis, akkor használja fel ezeket a mechanizmusokat.

Vegyük észre, hogy nagyon ritkán algebra vagy fogkő a teljesnek az alapjait egy nyelvet tárol. Rendszerint (például abban az esetben, SQL nyelv) nyelv keverékén alapuló algebrai és logikai struktúrák. Mindazonáltal, a tudás az algebrai és logikai alapjainak adatbázis nyelvek gyakran használják a gyakorlatban.

Hogy időt és teret, akkor nem vezetnek be szigorú szintaktikai, de főleg szorítkozunk az anyag a szemantikai szinten.

Felülvizsgálata Codd relációs algebra

Az alapötlet a relációs algebra, hogy mindaddig, amíg a kapcsolatok készletek, manipuláció kapcsolatok alapja lehet a hagyományos halmazelméleti műveletek, kiegészítve néhány speciális műveletek jellemző a relációs adatbázis.

Sok megközelítés meghatározása a relációs algebra. amelyek különböznek a készlet műveletek és módon kell értelmezni őket, de elvileg többé-kevésbé azonos. Ebben a részben bemutatjuk egy kicsit továbbfejlesztett változata az eredeti algebra. amely által javasolt Codd (nevezzük „Codd féle algebra”). Ebben a kiviteli alakban, egy sor alapvető algebrai műveletek áll nyolc műveletek, amelyek két osztályba sorolhatók - halmazelméleti műveletek és speciális relációs műveletek. A szerkezet a halmazelméleti műveletek közé tartoznak műveleteket:

  • unió kapcsolatok;
  • kereszteződés kapcsolatok;
  • figyelembe véve a különbség a kapcsolat;
  • figyelembe véve a Descartes-szorzat kapcsolatok.

Különleges relációs műveletek a következők:

  • korlátozó kapcsolatok;
  • vetítési kapcsolat;
  • Kapcsolatba kapcsolatok;
  • kapcsolatok részlege.

Szintén szerepel a algebra megbízás működését. Lehetővé teszi, hogy mentse az adatbázis a számítási eredmények az algebrai kifejezések és attribútumok az átnevezés működését. amely lehetővé teszi, hogy megfelelően alkotnak header (diagram) a kapott kapcsolatokat.

Az általános értelmezése relációs műveletek

Ha nem megy be néhány finomságok, amely azt fogja vizsgálni a következő részekben, akkor szinte minden művelet általunk javasolt egy sor egyértelmű és egyszerű értelmezése.

  • Amikor a kombinálásával művelet (UNION) két kapcsolatok végezzük ugyanazon címszó arányt, beleértve az összes tuple, hogy tartalmaz legalább egy az operandus kapcsolatok.
  • A kereszteződés (metszik) két reláció ugyanazzal a hozzáállás teszi címoldalára, magában foglalja az összes sorok, amelyek szerepelnek a két operandus kapcsolatok.
  • Ratio, ami a különbség (mínusz) a két kapcsolatok ugyanazon címszó, felöleli az összes tuple szerepel az első operandus aránya olyan, hogy egyikük sem nem tartalmazza az arány, amely a második operandus.
  • Amikor a Descartes-szorzat (alkalommal) a két arány, a kereszteződés fejlécek, amely üres készült aránya tuple amelynek tuple készülnek kombinálásával első és a második operandus.
  • Az eredmény korlátozás (ahol) kapcsolatok egy bizonyos feltétel az arány, beleértve a kapcsolat -operanda esek kielégíti ezt a feltételt.
  • Amikor a nyúlvány (Project) aránya egy előre meghatározott részhalmazát az attribútumok annak aránya készül, amelyek tuple releváns részhalmazainak -operanda tuple a kapcsolatban.
  • Amikor a vegyület (csatlakoznak) két kapcsolatok egy bizonyos feltétel keletkezik kapott aránya, tuple amelynek tuple készülnek kombinálásával az első és második arány és megfelel ennek a feltételnek.
  • A relációs osztás (osztás) két operandus - a két- és egyváltozós kapcsolatok. A kapott kapcsolatban áll, egyváltozós tuple beleértve az első attribútum értéke az első operandus tuple úgy, hogy a beállított értékek a második attribútum (egy fix érték az első attribútum) magában foglal több értékek a második operandus.
  • átnevezési művelet (rename) termel aránya, amely egybeesik a test operandus testet, de az attribútum nevek megváltoznak.
  • Működés hozzárendelés (: =) lehetővé teszi, hogy mentse az eredmény kiszámításához összehasonlító kifejezés vonatkozásában a meglévő adatbázist.

Ennek eredményeként bármely relációs műveletek (kivéve a hozzárendelési művelet., Amely nem termel értékek) egy bizonyos arányban, a relációs expresszió lehet kialakítva, amely ahelyett, hogy az arány-operandus relációs művelet beágyazott relációs kifejezés. Az építési összehasonlító kifejezés minden relációs operátorok részt vehet. kivéve egy hozzárendelés. Számítási értelmezése az összehasonlító kifejezés által diktált meghatározott prioritások műveleteket:

ÁTNEVEZÉS> = ahol = Projekt> = TIMES = REGISZTRÁCIÓ = metszik = OSZTÁS> = UNION = MÍNUSZ

Egy másik formában, a prioritásokat a műveletek ábrán látható. 3.1. A kifejezés kiértékelésének balról jobbra prioritásaival műveletek és zárójelben.


Ábra. 3.1. Táblázat prioritások hagyományos relációs algebra műveletek

Lezárása relációs algebra és átnevezési művelet

Amint már említettük, az előző fejezetben, minden értéket-arány jellemzi a cím (vagy kör) és a test (vagy több sorok). Ezért, ha valóban szükség van algebra. művelet, amelyet zárva a koncepció kapcsolat, az egyes műveleteket kell mutatnia az arány a valódi értelemben, azaz a. e. kell rendelkeznie a karosszéria és a fejléc. Csak ebben az esetben lehet majd építeni Beágyazott kifejezéseket.

Cím kapcsolatok halmaza párok <имя-атрибута, имя-домена>. Ha megnézzük áttekintést relációs operátorok azt az előző szakaszban, azt látjuk, hogy a domének az attribútumok a kapott összefüggés egyértelműen meghatározható domén operandus kapcsolatok. Az eredmény azonban az attribútum nevek nem mindig olyan egyszerű.

Képzeljük el például, hogy a kapcsolat-operandus működését a Descartes-szorzat az azonos nevű, vannak olyan attribútumok azonos domének. Mi lenne a kapott összefüggés irány? Mivel ez a készülék, akkor nem ugyanazokat az elemeket tartalmazzák. Hanem elveszíti a tulajdonság következtében elfogadhatatlan. Ez azt jelenti, hogy ebben az esetben lehetetlen végrehajtani a műveletet a Descartes-szorzat helyesen.

Hasonló problémák is előfordulhatnak más esetekben két helyen műveleteket. Problémáinak megoldására számának relációs algebra műveletek megadása átnevezési művelet. Meg kell alkalmazni abban az esetben, ha az attribútum névadási konfliktus keletkezik a kapcsolatot operandus egy relációs operátor. Aztán az egyik operandus alkalmazzák először átnevezési művelet. majd a fő művelet már minden gond nélkül. Szigorúbban definiáljuk az átnevezési művelet a következő fejezetben, de most csak megjegyezni, hogy a művelet következtében a hozzáállás, hogy megfeleljen körül az operandus arányt, kivéve, hogy a meghatározott attribútum nevét megváltoztatja a megadott névvel.

A következőkben azt fogjuk feltételezni használatát átnevezés működés minden konfliktushelyzeteket.

Ebben az esetben, minden rendben?

(REGISZTRÁCIÓ PROJEKTEK EMPLOYEES WHERE (SLU_IMYA = PROEKT_RUK ÉS PRO_ZARP> 18000.00)) PROJEKT (SLU_IMYA, SLU_NOM)

végre equi-join munkavállalói kapcsolatok és a projekt a feltétellel SLU_IMYA = PROEKT_RUK;

szűkülő arányt kapott állapotban PRO_ZARP> 18000.00;
projekt eredményét az előző műveletet a tulajdonság SLU_IMYA, SLU_NOM

Talán itt, így ez lesz a helyes alapján a korábbi előadások ezen a kurzuson.
teljesítenek equi-join munkavállalói kapcsolatok és projektek
szűkülő arányt kapott (SLU_IMYA = PROEKT_RUK) ÉS (PRO_ZARP> 18000.00)
projekt eredményét az előző műveletet a tulajdonság SLU_IMYA, SLU_NOM

Amennyiben a művelet eredményeként a SLUZHASCHIE_V_PROEKTE_1 TIMES projekt végső Talitsa bizonyíték van kapcsolat SLUZHASCHIE_V_PROEKTE_2.