Download - Modelo relacional - 1 Linguagens relacionais m Notações para expressar perguntas: q algébrica – aplicação de operadores a relações q lógica (cálculo relacional)

Transcript
  • Slide 1
  • Modelo relacional - 1 Linguagens relacionais m Notaes para expressar perguntas: q algbrica aplicao de operadores a relaes q lgica (clculo relacional) frmula que os tuplos da resposta devem satisfazer equivalentes em poder expressivo. m Limitaes: q independncia fsica dos dados linguagem s com construes relativas ao modelo de dados (operaes sobre relaes) que no dependam da implementao no se pode aceitar programas genricos q optimizao das perguntas restrio no poder expressivo: sem recurso (incapaz de computar o fecho transitivo) q relaes finitas complementao proibida
  • Slide 2
  • Modelo relacional - 2 Operaes Bsicas 1 - ReunioR S q o conjunto dos tuplos que esto em R, em S, ou em ambas R e S da mesma aridade nomes dos atributos a especificar 2 - DiferenaR S q tuplos de R que no esto em S R e S da mesma aridade
  • Slide 3
  • Modelo relacional - 3 Operaes Bsicas 3 - Produto cartesiano R S q aridades de R e S so k 1 e k 2 aridade de R S k 1 + k 2 contm todos os tuplos tais que os primeiros k 1 componentes formam um tuplo de R e os restantes k 2 componentes formam um tuplo em S
  • Slide 4
  • Modelo relacional - 4 Operaes Bsicas 4 - Projeco i 1, i 2,..., i m (R) q para cada tuplo em R existe um tuplo na projeco com os componentes (e pela ordem) indicados pelos i j se aridade de R for k ento os i j 1,..., k e so distintos; aridade da projeco m nmeros de componentes podem ser substitudos por atributos, se existirem: 1,3 (R) = A,C (R) Projeco escolhe colunas da tabela
  • Slide 5
  • Modelo relacional - 5 Operaes Bsicas 5 - Seleco F (R) q contm os tuplos de R que satisfazem F a frmula F pode envolver operandos constantes ou nmero de componente ( $i ) operadores aritmticos de comparao (,,,,, ) operadores lgicos (,, ) ( e, ou, no ) Nmeros de componentes podem ser substitudos por atributos, se existirem: $2=b (R) = B=b (R) Seleco escolhe linhas da tabela
  • Slide 6
  • Modelo relacional - 6 Operaes Compostas 6 - Interseco R S q contm os tuplos que pertencem a R e a S simultaneamente R e S da mesma aridade q R S = R - (R-S)
  • Slide 7
  • Modelo relacional - 7 Quociente 7 - Quociente R / S aridade de R r e de S s, r s, S q contm os (r-s)-tuplos (a 1,..., a r-s ) tais que, para todos os s- tuplos (a r-s+1,..., a r ) em S, o tuplo (a 1,..., a r ) est em R / = = 73 21 2 3 + 1 = 7
  • Slide 8
  • Modelo relacional - 8 Explicao alternativa m Forma de proceder diviso q reordenar as colunas de forma a que as ltimas correspondam ao quociente q ordenar a tabela pelas primeiras colunas q cada subtuplo das primeiras colunas pertence ao resultado se o conjunto de subtuplos das ltimas colunas que lhe corresponde contiver o quociente /=
  • Slide 9
  • Modelo relacional - 9 Expresso do quociente q T = 1,..., r-s (R) = universo dos tuplos possveis no resultado q W = (T S) - R= todas as linhas T combinadas com S mas que no esto em R, i.e., em que a condio falha q V = 1,..., r-s (W) = tuplos que no interessam q R / S = T - V= tuplos que interessam reunindo numa s expresso algbrica R / S= 1,..., r-s (R) - 1,..., r-s 1,..., r-s (R) S - R
  • Slide 10
  • Modelo relacional - 10 Quais as frases verdadeiras? a ( R-S ) S = R b ( R-S ) S R c ( R-S ) ( R S ) = R d ( R-S ) ( S-R ) = ( R S ) - ( R S ) e ( R/S ) S = R f ( R/S ) S R q Respostas Erradas - a e e Correctas - b, c, d e f
  • Slide 11
  • Modelo relacional - 11 Juno 8 - -Juno R S se a aridade de R for r e a de S, s a aridade da -juno r+s q contm os tuplos do produto cartesiano de R por S tais que o componente i est na relao com o componente r+j (i.e., o correspondente ao j em S). m Expresso da -juno R S= $i $(r+j) (R S) se for =, a operao designa-se equijuno ( 7, 8, 9 ) um tuplo pendente de R pois no aparece na -juno i j R S 2