Închiderea algebrei relaționale și operația de redenumire

Interpretarea generală a operațiunilor relaționale.

· Atunci când se efectuează operația de conectare a două relații, se face o relație care include toate tuplurile care intră în cel puțin una dintre relațiile de operand.

· Funcționarea traversării a două relații produce o relație care include toate tuplurile care intră în ambele relații de operand.

· O relație care este diferența dintre două relații include toate tuplurile care intră în relație - primul operand, astfel încât nici unul dintre ele nu este inclus în relația fiind cel de-al doilea operand.

· Atunci când se execută un produs direct de două relații, se face o relație, a cărei tupluri sunt concatenarea (coeziunea) tuplurilor primului și al doilea operand.

· Rezultatul unei constrângeri de constrângere asupra unei anumite condiții este relația care cuprinde tuplurile relației operand care satisface această condiție.

· Atunci când o relație este proiectată pe un anumit set al atributelor sale, se face o relație, ale cărei tupluri sunt produse prin luarea valorilor corespunzătoare de la tuplurile relației operand.

· Atunci când două relații sunt legate în funcție de o anumită condiție, se formează o relație rezultată, ale cărei nopți sunt concatenarea tuplurilor primei și celei de-a doua relații și care satisfac această condiție.

· Într-o operație relațională, doi operanzi sunt relații binare și unare. Raportul rezultat constă din tuple un singur atribut, inclusiv prima valoare a atributului primelor tuplele operanzilor astfel încât valorile setate ale doilea atribut (pentru o valoare fixă ​​a primului atribut) coincide cu valoarea stabilită al doilea operand.

· Operația de redenumire generează o relație al cărei corp este identic cu cel al operandului, dar numele de atribute sunt schimbate.

· Funcția de asignare permite salvarea rezultatului calculului expresiei relaționale în relația bazei de date existente.

Ca rezultat orice operațiuni relaționale (cu excepția atribuire) este un raport, este posibil să se formeze expresiile relaționale, în care, în loc de un raport al unei operații relaționale operanzi este încorporat expresie relațională.

Închiderea algebrei relaționale și operația de redenumire.

Fiecare relație este caracterizată de o schemă (sau de titlu) și un set de tupluri (sau un corp). Prin urmare, dacă cineva dorește să aibă o algebră a cărei operațiune este închisă în raport cu noțiunea de relație, atunci fiecare operație trebuie să producă o relație în sensul complet, adică trebuie să aibă atât un corp cât și un titlu. Numai în acest caz va fi cu adevărat posibil să se construiască expresii imbricate.

Antetul relației este un set de perechi <имя-атрибута, имя-домена>. Dacă vă uitați la prezentarea generală a operațiilor relaționale din subsecțiunea precedentă, puteți vedea că domeniile atributelor relației rezultate sunt determinate în mod unic de domeniile din relațiile de operand.

Caracteristici ale operațiilor set-teoretice ale algebrei relaționale.

Semnificația operațiunii sindicale în algebra relațională în ansamblul său rămâne a fi setată-teoretică. Dar dacă în teoria seturilor operația de îmbinare este semnificativă pentru oricare două seturi de operand, atunci în cazul algebrelor relaționale rezultatul operației sindicale este relația. Dacă permitem în algebra relațională posibilitatea unei unități set-teoretice a două relații arbitrare (cu scheme diferite), atunci, bineînțeles, rezultatul operației va fi un set, dar o multitudine de tupluri diferite, adică nu relație. Dacă pornim de la cerința ca algebra relațională să fie închisă față de conceptul unei relații, atunci o astfel de operațiune de unire nu are sens.

Toate aceste considerente conduc la apariția noțiunii de compatibilitate a relațiilor de asociere: două relații sunt compatibile în uniune doar dacă au aceleași titluri. Mai exact, aceasta înseamnă că anteturile ambelor relații conțin același set de nume de atribute și aceleași atribute sunt definite pe același domeniu.

În cazul în care cele două relații sunt compatibile pentru a combina, apoi îndeplinirea normală a uniunii lor, intersecție și luând diferența dintre rezultatul operației este o relație bine definită, cu titlu coincide cu antetul fiecăreia dintre relațiile operanzi.

Observăm că includerea în compoziția operațiilor algebrei relaționale a celor trei operații de unire, intersecție și luare a diferenței este evident redundantă, deoarece se știe că oricare dintre aceste operații este exprimată prin celelalte două. Cu toate acestea, Codd a decis odată să includă toate cele trei operații, bazate pe nevoile intuitive ale potențialului utilizator al sistemului de baze de date relaționale, departe de matematică.

Alte probleme se referă la funcționarea preluării produsului direct al două relații. În teoria seturilor, poate fi obținut un produs direct pentru oricare două seturi, iar elementele setului rezultat sunt perechi compuse din elemente ale primului și celui de-al doilea set. Deoarece relațiile sunt seturi, este posibil să se obțină un produs direct pentru orice două relații. Dar rezultatul nu este o atitudine! Elementele rezultatului nu vor fi tupluri, ci perechi de tupluri.

Prin urmare, algebra relațională folosește o formă specializată a operării de a lua un produs direct - un produs direct extins al relațiilor. Când luăm un produs direct extins de două relații, elementul relației care rezultă este o tuplă care este concatenarea (sau fuzionarea) unei tuple a primei relații și a unei tuple a celei de-a doua relații.

Conceptul de compatibilitate pentru luarea unui produs direct extins. Două relații sunt compatibile cu luarea unui produs direct dacă și numai dacă seturile de nume de atribut ale acestor relații nu se intersectează. Orice două relații pot fi compatibile cu luarea unui produs direct prin aplicarea unei operațiuni de redenumire la una dintre aceste relații.

În ceea ce privește operațiunile de set teoretic de algebra relațională asemenea, trebuie remarcat faptul că toate cele patru operații sunt asociative. Adică, dacă notăm OP oricare dintre cele patru operații, (A OP B) OP C = A (B OP C), și, prin urmare, fără a introduce ambiguitate poate scrie un OP B OP C (A, B și C -. Relații , având proprietățile necesare pentru executarea corectă a operației corespunzătoare). Toate operațiile, cu excepția faptului că au o diferență, sunt comutative, adică A OP B = B OP A.

Operații relaționale speciale.

Operația de restricționare necesită doi operanzi: o relație constrânsă și o condiție de constrângere simplă. Restricții condiție simplă poate avea orice fel de (un comp-op b), în cazul în care a și b - numele relației constrânse atribute, ceea ce face ca pas sens de comparare comp-op, sau vederi (un Const comp-op), în cazul în care un - numele atributului Limited relații și const este o constantă literală dată.

Operația de a lua o proiecție necesită de asemenea prezența a două operanzi - relația proiectată A și lista de nume de atribute incluse în antetul relației A.

Rezultatul proiecției relației A din lista atributelor a1, a2. a este o relație, cu un antet definit de setul de atribute a1, a2. an, și cu un corp format din tuple de formă

Articole similare