Aula_09

Aula_09


DisciplinaMatemática Discreta6.427 materiais85.689 seguidores
Pré-visualização2 páginas
*
*
MATEMÁTICA DISCRETA \u2013 AULA 9
PROFESSORA HELGA BODSTEIN, D.Sc. 
Aula 9
Operações Relacionais
*
*
Conteúdo
Operação relacional de produto cartesiano
Operação relacional de união
 Operação relacional de diferença 
Operação relacional de junção
*
*
Aula 9 \u2013 Operações Relacionais
Conceitos
Um sistema de bases de dados relacionais contém um ou mais objetos chamados tabelas (Relações). 
Os dados ou informações são armazenados nessas tabelas. 
*
*
Aula 9 - Operações Relacionais
Entidades e Atributos 
Toda a informação de um banco de dados relacional é armazenada em Tabelas, que na linguagem do modelo relacional, também são chamadas de Entidades. 
Por exemplo, pode existir uma Tabela "Clientes", onde seriam armazenadas informações sobre os diversos clientes. 
*
*
Aula 9 - Operações Relacionais
Entidades e Atributos 
Sobre cada um dos clientes podem ser armazenadas diversas informações tais como:
Nome, RG, CPF, Rua, Bairro, Telefone, CEP, Data de Nascimento etc
Essas diversas características de cada Cliente são os "Atributos" da entidade Cliente, também chamados de campos da tabela Cliente. 
*
*
Aula 9 - Operações Relacionais
Entidades e Atributos 
"O Conjunto de todos os Atributos de um cliente e os valores dos atributos é o que forma o Registro do Cliente". 
Com isso temos uma Tabela que é constituída por um conjunto de Registros (uma linha completa com informações sobre o cliente) e cada Registro formado por um conjunto de atributos (Nome, Endereço, etc). 
*
*
Aula 9 - Operações Relacionais
Entidades e Atributos 
Resumindo:
Entidade ou Tabela: Um conjunto de registros. 
Campos ou Atributos: Características individuais da tabela.
*
*
Aula 9 - Operações Relacionais
Chave Primária 
"Ao Definirmos um campo como sendo uma Chave Primária, estamos informando que os valores neste campo precisam ser únicos". 
	Por exemplo, se definimos um campo "Número da Identidade", da tabela Clientes, como sendo um campo do tipo Chave Primária, não podem ser cadastrados dois clientes com o mesmo valor no campo "Número da Identidade\u201d
*
*
Aula 9 - Operações Relacionais
Chave Primária 
Definição: identifica de maneira única cada Registro de uma Tabela, isto é, de posse do valor da Chave Primária somente localizaremos um registro com aquele valor no campo Chave Primária. 
Chave Estrangeira 
Atributo, ou conjunto de atributos, de uma relação que é chave primária numa outra relação.
*
*
Aula 9 - Operações Relacionais
Operações \u2013 Continuação
Produto Cartesiano
Produz uma relação com todas as colunas das relações envolvidas e a combinação de todas as linhas de uma relação com todas as linhas da outra relação.
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
Exemplo: Produto cartesiano entre peça e fornecedor
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
Exemplo: Produto cartesiano entre peça e fornecedor
Peça X Fornecedor
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
A tabela resultante de um Produto Cartesiano terá como resultado:
Número de colunas \u2013 soma do número de colunas das tabelas de origem.
	- Peça \u2013 4 colunas
	- Fornecedor \u2013 3 colunas
		Peça x Fornecedor \u2013 7 colunas
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
		Peça x Fornecedor \u2013 7 colunas
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
A tabela resultante de um Produto Cartesiano terá como resultado:
Número de tuplas \u2013 produto do número de tuplas das tabelas de origem.
	- Peça \u2013 3 tuplas
	- Fornecedor \u2013 2 tuplas
		Peça x Fornecedor \u2013 6 tuplas
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
		Peça x Fornecedor \u2013 6 tuplas
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
	Utilidade Prática: Permite estabelecer a ligação e a navegação entre as relações.
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
Exemplo: Obter os nomes das peças e dos fornecedores localizados na mesma cidade.
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
1º. Passo \u2013 Obtenção de uma tabela temporária resultado do produto cartesiano:
Produto Cartesiano: Temp1 \uf0ac Peça \uf0b4 Fornecedor
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
2º. Passo \u2013 Seleção das tuplas onde:
peça.cidade = fornecedor.cidade:
Temp2 \uf0ac \uf073peça.cidade = fornecedor.cidade (Temp1) 
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
2º. Passo \u2013 Seleção das tuplas onde:
peça.cidade=fornecedor.cidade:
Temp2 \uf0ac \uf073peça.cidade = fornecedor.cidade (Temp1) 
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
3º. Passo \u2013 Projeção das colunas nome da peça e nome do fornecedor:
Resultado \uf0ac \uf070peça.nome, fornecedor.nome(Temp2 ) 
*
*
Aula 9 - Operações Relacionais
Produto Cartesiano
3º. Passo \u2013 Projeção das colunas nome da peça e nome do fornecedor:
Resultado \uf0ac \uf070peça.nome, fornecedor.nome(Temp2 ) 
*
*
Aula 9 - Operações Relacionais
União de Relações
Geração de uma nova relação através da reunião das tuplas de duas relações. 
Símbolo: \uf0c8
	Para a União, as relações têm que ser compatíveis de união (mesmo número de colunas, mesmo domínio). 
*
*
Aula 9 - Operações Relacionais
União de Relações
Exemplo
*
*
Aula 9 - Operações Relacionais
União de Relações
Ex: Obter os códigos das peças azuis ou que são fornecidas pelo fornecedor S2.
*
*
Aula 9 - Operações Relacionais
Ex: Obter os códigos das peças azuis ou que são fornecidas pelo fornecedor S2.
1º - Códigos das peças azuis: 
Peças azuis: \uf073peça = azul (PEÇA) 
*
*
Aula 9 - Operações Relacionais
Ex: Obter os códigos das peças azuis ou que são fornecidas pelo fornecedor S2.
1º - Códigos das peças azuis 
Códigos das Peças azuis: \uf070código (\uf073peça = azul (PEÇA))
Temp1\u2190 \uf070código (\uf073peça = azul (PEÇA))
*
*
Aula 9 - Operações Relacionais
Ex: Obter os códigos das peças azuis ou que são fornecidas pelo fornecedor S2.
2º - Códigos da peças fornecidas pelo fornecedor S2
Fornecedor S2: \uf073COD_FORN = S2 (FORNECIMENTO)
*
*
Aula 9 - Operações Relacionais
Ex: Obter os códigos das peças azuis ou que são fornecidas pelo fornecedor S2.
2º - Códigos da peças fornecidas pelo fornecedor S2
Códigos das peças do Fornecedor S2: 
\uf070COD_PECA (\uf073COD_FORN = S2 (FORNECIMENTO))
Temp2 \u2190 \uf070COD_PEÇA (\uf073COD_FORN = S2 (FORNECIMENTO))
*
*
Aula 9 - Operações Relacionais
*
*
Aula 9 - Operações Relacionais
Diferença de Relações
Geração de uma nova relação contendo as tuplas que estão em uma relação mas não estão na outra. 
Para a diferença, as relações também têm que ser compatíveis de união, ou seja, mesmo número de colunas, mesmo domínio.
*
*
Aula 9 - Operações Relacionais
Diferença de Relações
Exemplo:
*
*
Aula 9 - Operações Relacionais
Diferença de Relações
Exemplo: Obter as cidades onde existam peças mas não existam fornecedores.
 
*
*
Aula 9 - Operações Relacionais
Exemplo: Obter as cidades onde existam peças mas não existam fornecedores.
1º - cidades onde existam peças: \uf070cidade(Peça) 
*
*
Aula 9 - Operações Relacionais
Exemplo: Obter as cidades onde existam peças mas não existam fornecedores.
2º - cidades onde existam fornecedores:
 \uf070cidade(Fornecedor) 
*
*
Aula 9 - Operações Relacionais
Cidades onde existam peças mas não existam fornecedores.
\uf070cidade(Peça) - \uf070cidade(Fornecedor) 
			 - 		 = 
*
*
Aula 9 - Operações Relacionais
Interseção de Relações
Geração de uma nova relação contendo apenas as tuplas que pertençam às duas relações simultaneamente. 
Para a Interseção, as relações também têm que ser compatíveis de união.
*
*
Aula 9 - Operações Relacionais
Interseção de Relações
Exemplo
*
*
Aula 9 - Operações Relacionais
Interseção de Relações
Exemplo: Obter as cidades onde existam peças e fornecedores.
\uf070cidade(Peca) \uf0c7 \uf070cidade(Fornecedor) 
		 \uf0c7 =
*
*
Aula 9 - Operações Relacionais
Junção de Relações
Implementa a composição dos operadores de produto cartesiano e de seleção.
 Símbolo:
	Abreviação para \u3c3p ( R X S)
*
*
Aula 9 - Operações Relacionais
Junção de Relações
Exemplo:
*
*
Aula 9 - Operações Relacionais