Upload
helio-martins
View
421
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
Modelo Relacional
Base de Dados 1
Tabela Relações Esquema Conceito Chave Modelo ER para Relacional
Agenda
Uma Base de Dados Relacional consiste em uma
colecção de tabelas, cada uma das quais com um nome único.
Uma linha em uma tabela representa um relacionamento entre um conjunto de valores.
Uma vez que essa tabela é uma colecção de tais relacionamentos, há uma estreita correspondência entre o conceito de tabela e o conceito matemático de relação, a partir das quais se origina o nome desse modelo de dados.
Estrutura de Bases de Dados Relacionais
Tabela - conjunto não ordenado de linhas
(tuplos). Cada linha é composta por uma série de campos (atributo).
Campo - identificado por nome de campo (nome de atributo).
O conjunto de campos das linhas de uma tabela que possuem o mesmo nome formam uma coluna.
Tabela
Tabela Empregado
Exemplo Tabela
Esquema de Base de Dados - Colecção de
objectos (ex: Tabelas, relações) de uma base de dados que estão disponível para um determinado grupo;
É uma estrutura descrita em uma linguagem formal suportada pelo sistema de gestão de base de dados (SGBD).
Numa base de dados relacional, o esquema define as tabelas, os campos em cada tabela e os relacionamentos entre os campos e tabelas.
Esquema de base de dados
Exemplo de Esquema
O conceito básico para estabelecer relações
entre linhas de tabelas de um banco de dados relacional é o da chave. Em uma base de dados relacional, há pelo menos dois tipos de chaves a considerar: chave primária, chave estrangeira.
Conceito de Chave
Chave primária - é uma coluna ou uma
combinação de colunas cujos valores distinguem uma linha das demais dentro de uma tabela;
Se um campo de uma tabela é chave primária quer dizer que: Identifica cada linha da tabela Não pode conter valores nulos Não pode ter valores repetidos
Chave Primária
Exemplo Chave primária
Matricula
Marca
Km Data Registo
ST-55-HM Ford 80000 05-10-1995
ST-20-CX Toyota
50000 10-09-2000
FG-50-US Lancia
30000 11-01-205
A matricula é chave primária:- Identifica cada linha da
tabela- Não pode conter valores
nulos- Não pode conter valores
repetidos
Chave estrangeira – é uma coluna ou uma
combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma (outra) tabela.
É o mecanismo que permite a implementação de relacionamentos em uma base de dados relacional.
Chave Estrangeira
Exemplo Chave EstrangeiraO Campo turma na tabela Aluno é chave estrangeira e liga-se ao cod_turma na tabela Turma
Uma chave composta é uma colecção de
atributos que juntos formam um chave primária
Chave Primária Composta
Integridade dos dados de uma Base de Dados - os
dados reflectem correctamente a realidade representada pela base de dados e são consistentes entre si.
As regras de Integridade são garantidas pelo próprio SGBD
Tipos de Integridade Integridade de Tipo de dados – De acordo com tipo; Integridade de Vazio – Nulo ou não; Integridade de Chave - Único e Não Nulo; Integridade Referencial (estrangeira) – Existe na tabela
mãe.
Restrições de Integridade
Chamada de Esquema do Banco de Dados,
deve conter no mínimo: Tabelas que formam o banco de dados; Colunas que as tabelas possuem; e Restrições de integridade.
Especificação do SGBD
Mapeamento entre Modelos
Objectivos:
Obter uma base de dados que permita a eficiência das instruções de consulta e alteração do banco;
Obter uma base de dados simplificada, no que diz respeito ao desenvolvimento e manutenção das aplicações.
Passos 1. tradução inicial de entidades e respectivos
atributos; 2. tradução de relacionamentos e respectivos
atributos.
Modelo E-R para o Modelo Relacional
Passo 1.1 – Mapeamento de Entidades
Cada entidade é traduzida para uma tabela. Cada atributo da entidade define uma coluna da
tabela. Os atributos identificadores da entidade
correspondem às colunas que compõem a chave primária da tabela.
Passo 1 Mapear Entidades
Nomes de Colunas devem ser curtos; Nomes de colunas não devem conter
espaços em branco; Exemplo: Nome do Cliente -> NomeCliente ou Nome Código do Cliente -> Codigo ou CodigoCliente
ou CodCliente ou CodigoCli
Mapeamento Atributos
Para mapear as relações existem 3
possibilidades Tabela própria : relacionamentos n para n; Coluna (s) adicional (is) dentro de uma das
tabelas relacionamentos n para 1 ou 1 para n; Fusão das tabelas relacionadas em uma
só: relacionamentos 1 para 1.
Passo 2Mapear Relações
Relação 1:1Participação Opcional
Relação 1:1Uma Participação
Obrigatória
Relação 1:1Duas Participação
Obrigatória
Relação 1:n
Relação de 1:n
Relação de n:n
Exercício Exemplo