Base de Dados 1
Agenda







Tabela
Relações
Esquema
Conceito Chave
Modelo ER para Relacional
Estrutura de Bases de
Dados Relacionais



 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.
Tabela

 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.
Exemplo Tabela

Tabela Empregado
Esquema de base de
dados

 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.
Exemplo de Esquema

Conceito de Chave

 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.
Chave Primária

 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
Matricula

Marca Km

Data Registo

ST-55-HM

Ford

80000

05-10-1995

ST-20-CX

Toyot 50000
a

10-09-2000

FG-50-US

Lancia 30000

11-01-205

Exemplo Chave
primária
A matricula é chave primária:
- Identifica cada linha da tabela
- Não pode conter valores nulos
- Não pode conter valores
repetidos
Chave Estrangeira

 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.
Exemplo Chave
Estrangeira
O Campo turma na tabela Aluno é
chave estrangeira e liga-se ao
cod_turma na tabela Turma
Chave Primária Composta


 Uma chave composta é uma colecção de atributos
que juntos formam um chave primária
Restrições de
Integridade

 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.
Especificação do SGBD

 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.
Mapeamento entre
Modelos

Modelo E-R para o
Modelo Relacional

 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.
Passo 1
Mapear Entidades

 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.
Mapeamento Atributos

 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
Passo 2
Mapear Relações

 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.
Relação 1:1
Participação Opcional

Relação 1:1

Uma Participação Obrigatória


Relação 1:1

Duas Participação Obrigatória


Relação 1:n

Relação de 1:n

Relação de n:n

Exercício Exemplo


Aula 4 modelo relacional

  • 1.
  • 2.
  • 3.
    Estrutura de Basesde Dados Relacionais   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.
  • 4.
    Tabela   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.
  • 5.
  • 6.
    Esquema de basede dados   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.
  • 7.
  • 8.
    Conceito de Chave  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.
  • 9.
    Chave Primária   Chaveprimá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
  • 10.
    Matricula Marca Km Data Registo ST-55-HM Ford 80000 05-10-1995 ST-20-CX Toyot50000 a 10-09-2000 FG-50-US Lancia 30000 11-01-205 Exemplo Chave primária A matricula é chave primária: - Identifica cada linha da tabela - Não pode conter valores nulos - Não pode conter valores repetidos
  • 11.
    Chave Estrangeira   Chaveestrangeira – é 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.
  • 12.
    Exemplo Chave Estrangeira O Campoturma na tabela Aluno é chave estrangeira e liga-se ao cod_turma na tabela Turma
  • 13.
    Chave Primária Composta  Uma chave composta é uma colecção de atributos que juntos formam um chave primária
  • 14.
    Restrições de Integridade   Integridadedos 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.
  • 15.
    Especificação do SGBD  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.
  • 16.
  • 17.
    Modelo E-R parao Modelo Relacional   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.
  • 18.
    Passo 1 Mapear Entidades  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.
  • 19.
    Mapeamento Atributos   Nomesde 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
  • 20.
    Passo 2 Mapear Relações  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.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.