dxxc

1458 palavras 6 páginas
Álgebra Relacional

Modelo Relacional - Manipulação
• Duas categorias de linguagens
– Formais : álgebra relacional e cálculo relacional
– Alto Nível (Comerciais) - baseadas nas linguagens formais - SQL

• Linguagens formais – Características
– orientadas a conjuntos
– linguagens de base : linguagens relacionais devem ter no mínimo um poder de expressão equivalente ao de uma linguagem formal

• Fechamento
– resultados de consultas são relações

Álgebra Relacional
• Álgebra desenvolvida para descrever operações sobre uma base de dados relacional
• O conjunto de objetos são as Relações
• Operadores para consulta e alteração de relações
• Linguagem procedural
– uma expressão na álgebra define uma execução seqüencial de operadores
– a execução de cada operador produz uma relação

Álgebra Relacional
• Os operadores da álgebra relacional recebem uma ou mais relações de entrada e geram uma nova relação de saída

Álgebra Relacional
• Porque aprender:
– Compreendendo álgebra relacional é mais fácil apreender SQL
– Não há SGBD que implementa álgebra diretamente como
DML (Data Manipulation Language), mas SQL incorpora cada vez mais conceitos de álgebra
– Algoritmos de otimização de consulta são definidos sobre álgebra (possível uso internamente no SGBD)

Álgebra Relacional
• Operadores sobre conjuntos (uma tabela é um conjunto de linhas):





União
Interseção
Diferença
Produto Cartesiano

• Operadores específicos da álgebra relacional:
– Seleção
– Projeção
– Junção
– Divisão
– Renomeação

Operações
Project

Select

Union

Intersection

Difference
R

R

R

S

S

Join

*

Cartesian product
X

S

Divi sion

Esquema Relacional: Exemplo
Empregado
codEmp
200
201
202
203

Nome
Pedro
Paulo
Maria
Ana

Salario
3.000,00
2.200,00
2.500,00
1.800,00

idade
45
43
38
25

codDep
001
001
001
002

Projeto codProj Descricao codDep A
AATOM
001
B
DW

Relacionados