Administração de Banco de Dados - Operações Sobre Tabelas 19/10

Preview:

Citation preview

Administração de Bancos de Dados

Aula 6 Operações sobre Tabelas

Vínculos entre tabelas e Álgebra Relacional

Prof. Belarmino

Vínculos entre Tabelas

• A restrição de participação determina que a existência de uma entidade depende de sua participação em um tipo de relacionamento com outra entidade - um VINCULO entre elas.• Na participação Total qualquer ocorrência da Entidade só existe se há uma ocorrência correspondente em outra entidade • Na participação Parcial as ocorrências da Entidade requerem uma correspondência com alguma ocorrência da outra - mas não de modo total.

Vínculos entre Tabelas

• De um modo geral o vinculo entre tabelas não é facilmente representado no D-ER - outros diagramas fornecem uma apresentação melhor. Veja o diagrama proposto mostrando o relacionamento entre as entidades FUNCIONARIO e DEPARTAMENTO.

A ligação entre entidades no diagrama acima poderia ser mais completa ? Notação similar é usada no MS-Access. Você pode mencionar problemas com ela ?

Vínculos entre Tabelas

• Na notação IDEF1X os vínculos são explicitamente identificados como chaves primarias e estrangeiras, sendo apontados no próprio desenho.• As entidades são representadas com seus atributos na mesma figura.• Os relacionamentos se tornam apenas retas finalizadas por pequenas ‘bolinhas’

Alguns softwares como o ERWIN por exemplo usam uma outra notação.

Vínculos entre Tabelas

• Como treinamento passe o diagrama acima para o formato IDEF1X

Operações entre Tabelas

• No modelo de banco de dados relacional podemos extrair dados usando operações matemáticas pré-definidas sendo 4 operações de conjunto e operações relacionais.

• CONJUNTO: UNIÃO, DIFERENÇA, INTERSECÇÂO E PRODUTO CARTESIANO• RELACIONAIS: PROJEÇÂO, SELEÇÂO, DIVISÂO e JUNÇÂO ( ou JOIN )

Operações de Conjunto: UNIÃO

• A operação UNIÂO combina todas as linhas de duas tabelas de modo que a tabela formada tenha todas as linhas de A e de B sem repetição.• No exemplo acima os cadastros de produtos de 2 lojas do deposito de construção são reunidas para formar o cadastro geral da emprêsa.

Operações de Conjunto: INTERSECÇÂO

• A operação INTERSECÇÂO combina apenas as linhas que aparecem em ambas as tabelas formando uma nova tabela (sem repetição).• No exemplo acima queremos saber quais são os produtos que podem ser comprados diretamente em qualquer uma das duas lojas do depósito de construção.

Operações de Conjunto: DIFERENÇA

• A operação DIFERENÇA extrai as linhas que estão apenas em uma das tabelas para formar a tabela resultante;• No exemplo acima queremos saber quais são os produtos que estão disponíveis para compra direta em apenas uma das lojas do depósito de construção.

Operações de Conjunto: PRODUTO CARTESIANO

• A operação PRODUTO CARTESIANO combina as linhas que estão em duas tabelas não similares em uma nova tabela que é uma composição de ambas.• No exemplo acima queremos compor as possibilidades de compra de produtos nas duas lojas do depósito.

Operações Relacionais: PROJEÇÃO

• A operação PROJEÇAO extrai uma ou mais colunas da tabela para compor o resultado.• No exemplo acima queremos saber apenas qual o còdigo e o produto a partir da tabela “A” que contem mais colunas do que precisamos. Isto é bastante util na produçâo de relatórios especificos por exemplo.

Operações Relacionais: DIVISÂO

• A operação DIVISÂO encontra as linhas em que os valores das colunas combinam nas duas tabelas (match) mas retorna apenas as colunas que não existirem na 2ª tabela. • No exemplo acima queremos saber a data do ultimo pedido feito para o produto 22 (cimento) . O “match” acontece na 1ª linha da tabela “A”. Como as colunas Produto e e Codigo EXISTEM na tabela “B” eles NÂO serão mostrados no resultado – que sera apenas o campo Data Pedido.

Operações Relacionais: SELEÇÃO

• A operação SELEÇÃO extrai uma ou mais LINHAS da tabela para compor o resultado.• No exemplo acima queremos saber o código e os produtos fabricados pela BRITAX a partir das informações da tabela A que contem todos os produtos e seus fornecedores.

Operações Relacionais: JUNÇÂO

• A operação JUNÇÂO ( ou JOIN) – considerada a mais poderosa de todas as operações relacionais – combina as linhas das duas tabelas através de uma chave em comum. • No exemplo acima queremos saber o nome do fornecedor e seu local de origem para calcular o frete. A tabela A não nos permite isso – mas a operação de JOIN com a tabela B cria uma resultante que facilita obter a informação desejada

HARDWARE

FIM

Recommended