I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

4.1 Noções de Bases de Dados
•

Conceitos básicos introdutórios

•

Modelo Relacional
–

Conceitos fundamentais do Modelo Relacional

–

Restrições de Integridade

–

Metodologias de Desenho de Bases de Dados
Relacionais

DI@2006

Diapositivo

1
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

O que é uma Base de Dados?
• De uma forma genérica, qualquer conjunto
de dados é uma Base de Dados (BD):
– uma agenda com as moradas de pessoas
conhecidas;
– uma lista de CDs/DVDs;
– um livro;
– apontamentos tirados nas aulas;
– os dados guardados nos computadores das
Finanças sobre os contribuintes…
DI@2006

Diapositivo

2
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

O que é uma Base de Dados
Relacional?
• Base de dados em que os dados são
organizados em conjuntos de tabelas que
estão logicamente relacionadas através de
campos comuns.
• O utilizador pode consultar uma base de
dados relacional (BDR) sem necessitar de
conhecer a forma como os dados estão
fisicamente armazenados.
DI@2006

Diapositivo

3
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Para que utilizamos uma Base de
Dados Relacional?
•

Efectuar consultas ad-hoc sobre os dados
armazenados.

•

Exemplo:
– procurar a morada e o telefone dos clientes
do distrito de Viseu que efectuaram, nos
últimos seis meses, encomendas de maçãs
golden num valor superior a 1000 euros.
DI@2006

Diapositivo

4
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Dados Vs Informação
Os dados representam um conjunto de factos.
Os dados só se transformam em informação quando
relacionados ou interpretados de alguma forma.
As pessoas, ao tomarem decisões, utilizam a informação e
não os dados.
A informação é uma necessidade diária em qualquer acto
de gestão e tem um papel fundamental na previsão de
actividades e resultados futuros de uma empresa.
DI@2006

Diapositivo

5
I
n
f
o
r
m
á
t
i
c
a

Como criar uma Base de Dados
Relacional?
• Construir:
– modelo conceptual de dados (MCD);
Regras de Mapeamento

D
e
p
.
G
e
s
t
ã
o

– modelo lógico de dados (MLD)

Arquitectura
da BDR

Conjunto de tabelas relacionadas

SGBDR
DI@2006

Diapositivo

6
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Modelação de Dados
• Modelo de dados:
 Conjunto de ferramentas conceptuais para
descrever os dados, as relações entre os dados, a
semântica dos dados e as restrições dos dados;
 É uma representação abstracta e simplificada
de um sistema real, com a qual se pode explicar
ou validar as características, no seu todo ou em
partes.
DI@2006

Diapositivo

7
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Modelo Conceptual de Dados
•

Os objectos, as suas características e os
relacionamentos têm uma representação
fiel ao ambiente observado.

•

Utilizado ao nível da análise do problema
a modelar.

•

Não se restringe o processo de
modelação aos recursos disponibilizados
por cada tecnologia de implementação;
DI@2006

Diapositivo

8
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Modelo Lógico de Dados
•

Os objectos, as suas características e
relacionamentos têm uma representação
de
acordo
com
as
regras
de
implementação e limitações impostas por
algum tipo de modelação (ex: Relacional,
Orientada aos Objectos);

•

Resulta da aplicação de
derivação sobre um MCD;
DI@2006

regras

Diapositivo

de

9
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Criar o Modelo Conceptual de
Dados
• Diagrama de Entidades – Relacionamentos
– Ponto de partida para o desenho da arquitectura da base de dados.
– Identifica as “coisas” de maior importância num dado sistema do mundo
real: as entidades, as propriedades das entidades (os atributos), e a forma
como se relacionam entre si (os relacionamentos).
N om e
N D oc

D esignação
....

D ocen te

#D isc

E nsina

....

D iscip lina

– É facilmente compreendido pelos não-especialistas.
DI@2006

Diapositivo

10
I
n
f
o
r
m
á
t
i
c
a

Conceitos da abordagem E-R
C o n c eito

D e sc riçã o

Instâ n c ia

O c o rrê nc ia d e u m a e n tid a d e

A b stra c ç ã o d e o b je c to s o u c o nc e ito s d o m u n d o re a l
E n tid a d e

D
e
p
.
G
e
s
t
ã
o

A tr ib u to

a c e rc a d o s q ua is q ue re m o s g ua rd a r in fo rm a ç ã o ;
C a ra c te rístic a s p ró p ria s d a s e ntid a d e s ;
E n vo lv im e nto o u a sso c ia ç ã o e n tre a s ins tâ nc ia s d a s

R e la cio n a m e n to

e ntid a d e s

Exemplo de entidade e seus atributos:
Docente (NC, nome, morada, localidade, Cód_Postal, telefone, e-mail)
DI@2006

Diapositivo

11
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Atributos
•

O nome de cada atributo deve ser único, singular e não ambíguo
(utilizar prefixos ou sufixos. Exemplo: Data => Data_entrega ).

•

Todos os atributos devem ser não decomponíveis. Diz-se então
que os atributos são atómicos, ou que são atributos elementares.
N om e_aluno

Exemplo de atributo não atómico

N úm ero

D isciplinas

José Silva

1234

Física, Q uím ica, H istória

...

...

...

•

O conjunto de todos os valores possíveis para um dado atributo
constitui o domínio desse atributo.

•

Existem vários tipos de atributos: simples, compostos, multivalor e
derivados
DI@2006

Diapositivo

12
I
n
f
o
r
m
á
t
i
c
a

Tipos de Atributos
N P ró p rio

A p elid o
L o calizaçõ es
N om e

BI

S ex o

N ú m ero

F u n cio n á rio
D
e
p
.
G
e
s
t
ã
o

T em p o _ A ctiv id ad e

D ata_ ín icio _ activ

D ep a rta m en to

• Atributos Simples

(Exemplo: BI)

• Atributos Compostos

(Exemplo: Nome)

Um atributo composto pode ser considerado simples, dependendo da situação a tratar.

=> Quando os atributos básicos são tratados separadamente, um atributo composto
entra na entidade com todos os seus atributos básicos ( Funcionário:
BI, Npróprio, Apelido, Sexo)

DI@2006

Diapositivo

13
I
n
f
o
r
m
á
t
i
c
a

Tipos de Atributos
N P róprio

A pelido
L ocalizações
N om e

BI

S exo

F u n cion ário
D
e
p
.
G
e
s
t
ã
o

T em po_A ctividade

• Atributos Derivados

N úm ero

D ata_ínicio_activ

D ep artam en to

(Exemplo: Tempo_actividade)

Estes atributos devem ser identificados na análise, mas não devem fazer parte da
entidade, pois podem ser calculados.

• Atributos Multivalor

(Exemplo: Localizações)

=> Para cada atributo multivalor cria-se uma nova entidade
Número, Localização)
DI@2006

Exemplo(Loc_Dep:

Diapositivo

14
I
n
f
o
r
m
á
t
i
c
a

Entidades e Atributos
Que atributos considerar na descrição de uma
entidade?
Entidades CÃO e DONO_DO_CÃO vistas pelo veterinário:
CÃO

D
e
p
.
G
e
s
t
ã
o

nom e_ d o_cã o

raça

DONO_DO_CÃO ID _d o_d ono

DI@2006

sexo

ID _d o_d ono

nom e_ d o_d ono

data_ nasc

endereço

peso

sald o_da _c onta

Diapositivo

15
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Entidades e Atributos
Que atributos considerar na descrição de uma
entidade?
Entidades CÃO e DONO_DO_CÃO vistas pela administração municipal:
CÃO

n om e_ d o_cã o

D O N O _D O _C Ã O

raça

ID _d o_d on o

ID _ d o_ d o n o

d ata_ lice n.

n o m e _ d o_ d o n o

p eso

endereço

O atributo endereço deveria ser subdividido ? É possível determinar número de
cães por freguesia ?
=> endereço é um atributo composto que neste caso deveria ser subdividido
DI@2006

Diapositivo

16
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Chave Primária e Candidata
Instância: Ocorrência particular de uma entidade. Cada instância tem
de ser identificada univocamente.

Chave ou Identificador de uma entidade: Atributo ou conjunto de
atributos que permitem identificar univocamente uma instância de uma
entidade.

Chave primária: Corresponde a uma das chaves possíveis e possui as
seguintes características:
• unívoca - os atributos da chave primária têm um valor unívoco para
qualquer instância;

• não redundante - se algum dos atributos que formam a chave primária
for retirado, os restantes atributos deixam de ser unívocos
• não nula - nenhum dos atributos que formam a chave primária poderá
ter um valor nulo.
DI@2006

Diapositivo

17
I
n
f
o
r
m
á
t
i
c
a

Chave Primária e Candidata
Chave candidata: Atributo ou conjunto de atributos que podem ser
usados como chave primária de uma entidade.

Exemplo:
N om e

D
e
p
.
G
e
s
t
ã
o

N _E leitor

N _B I

F reguesia

R ua

Chaves candidatas:
N_BI
N_Eleitor, Freguesia
Obs. Não podem existir na mesma freguesia eleitores com o mesmo
número
DI@2006

Diapositivo

18
I
n
f
o
r
m
á
t
i
c
a

Chave Forasteira ou Externa
Chave forasteira ou chave externa: Atributo ou conjunto de atributos que
aparecem como chave primária numa outra entidade relacionada.
A chave forasteira permite estabelecer uma ligação (relacionamento) entre as
entidades representadas.
Exemplo:
CÃO

D
e
p
.
G
e
s
t
ã
o

n o m e _ d o_ c ã o

DONO_DO_CÃO

raça

ID _d o_d on o

se x o

I D _ d o_ d o n o

n om e_ d o_d on o

d a ta _ n a sc

endereço

p e so

s a ld o _ d a _ c o n t a

O atributo ID_do_dono :
na entidade CÃO é uma chave estrangeira
na entidade DONO_DO_CÃO é a chave primária
permite estabelecer uma ligação entre as entidades CÃO e DONO_DO_CÃO
DI@2006

Diapositivo

19
I
n
f
o
r
m
á
t
i
c
a

Relacionamentos
As entidades não estão isoladas, estão relacionadas com outras
entidades => é necessário identificar relacionamentos para ser
possível representar correctamente o mundo real.

Relacionamento: Associação entre entidades
D
e
p
.
G
e
s
t
ã
o

Relacionamento binário: Associação entre duas entidades

Principais elementos de caracterização de um relacionamento:
•
•
•
•

Semântica do relacionamento;
Grau ou cardinalidade do relacionamento;
Condições de participação das entidades no relacionamento;
Número de entidades que participam no relacionamento (binário
ou n-ário);

DI@2006

Diapositivo

20
I
n
f
o
r
m
á
t
i
c
a

Relacionamentos
Semântica do relacionamento
Especificada através de uma denominação (construção verbal)
representativa do conceito observado, que deve ser lida da esquerda p/
direita e de cima p/ baixo.

Grau ou cardinalidade do relacionamento
D
e
p
.
G
e
s
t
ã
o

O número de ocorrências de uma entidade, que podem estar
associadas com uma ocorrência de outra entidade permitem distinguir 3
tipos de relacionamentos:

Relacionamento 1:1 (1 para 1)
Relacionamento 1:N (1 para N)
Relacionamento N:M (N para M)
DI@2006

Diapositivo

21
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos
Tipos de relacionamentos binários entre entidades (cardinalidade)
R elacionam ento 1:1

D epartam ento

1

D irigido

1

Funcionário

Um departamento é dirigido por um funcionário e um funcionário só pode dirigir
um departamento

R elacionam ento 1:N

D epartam ento

1

C onstituído

N

Funcionário

Um departamento é constituído por vários funcionários e um funcionário só
pertence a um departamento

R elacionam ento N :M

Funcionário

N

T rabalha

M

Projecto

Um funcionário pode trabalhar em vários projectos e num projecto podem
trabalhar vários funcionários
DI@2006

Diapositivo

22
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos
Condições de participação das entidades no relacionamento
Conceito de participação obrigatória - Uma entidade é de
participação obrigatória num relacionamento se todas as instâncias
dessa entidade estão relacionadas com pelo menos uma instância
da outra entidade.
–

Nalguns casos a participação no relacionamento será obrigatória
e para outros será opcional
depende das particularidades do
ambiente observado e das regras estabelecidas;

–

Este conceito contribui para o enriquecimento do MD, evitando
ambiguidade.

DI@2006

Diapositivo

23
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos
Exemplo 1:
• Todas as disciplinas têm de ser asseguradas, sendo leccionadas por
um ou mais docentes;

• Os docentes podem estar dispensados de serviço docente ou podem
leccionar várias disciplinas.
N om e
N D oc

D esignação
....

#D isc

N
D ocen te
DI@2006

....

M
E nsina

D iscip lina
Diapositivo

24
I
n
f
o
r
m
á
t
i
c
a

Relacionamentos
Exemplo 2:
• Algumas disciplinas não são leccionadas pelo facto de terem sido
retiradas do plano de estudos;

• Todos os docentes leccionam, pelo menos uma disciplina.
D
e
p
.
G
e
s
t
ã
o

N om e
N D oc

D esignação
....

#D isc

N
D ocen te

DI@2006

....

M
E nsina

D iscip lina

Diapositivo

25
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos
Número de entidades que participam no relacionamento
• Um relacionamento pode envolver mais do que 2 entidades;
• As associações binárias entre as entidades podem não mapear de
forma correcta a informação desejada.
Relacionamentos binários múltiplos:
Os funcionários de uma empresa de prestação de serviços
podem ser alocados a diferentes projectos e exercer funções distintas.
N
Função
N
DI@2006

U tilizada

M

N
Projecto

Envolve

M
Funcionário
M

D esem penha
Diapositivo

26
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos
Quem é o Analista de Sistemas de um determinado projecto?
– A estrutura necessária para a derivação de um relacionamento
ternário (ou n-ário) é uma agregação;
– A agregação é requerida para expressar a função de um funcionário
em determinado projecto.
É necessário ter as 3 entidades associadas simultaneamente, através de
um relacionamento ternário.
F u ncionário
M
N
F u nção
DI@2006

P
A locação

P rojecto
Diapositivo

27
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Modelo (Lógico) de Dados Relacional
No modelo relacional os dados são organizados recorrendo a uma só
estrutura simples e familiar: a tabela, também denominada por
relação.

Todos os dados, bem como os relacionamento existentes
entre estes, são representados por um conjunto de tabelas
(relações) relacionadas entre si:
• Cada tabela (relação) tem um nome único, pelo qual é
referenciada;
• Cada linha da tabela (tuplo) representa um conjunto de factos que
descrevem uma ocorrência de uma entidade ou um
relacionamento entre entidades;
• Cada coluna da tabela (atributo) tem um nome e refere-se a um
dado aspecto da entidade ou relacionamento representado;
• Cada relação contém zero ou mais tuplos
DI@2006

Diapositivo

28
I
n
f
o
r
m
á
t
i
c
a

Modelo (Lógico) de Dados Relacional
Equivalências da notação de descrição de conceitos

(M odelo C onceptual de D ados)

A T R IB U T O

RELAÇÃO

(T eoria dos C onjuntos)

A T R IB U T O

F IC H E IR O
D
e
p
.
G
e
s
t
ã
o

E N T ID A D E

(Inform ática T radicional)

CAM PO

TABELA

(M odelo R elacional)

COLUNA

C LASSE

(M odelo O rientado por O bjectos)

A T R IB U T O

D ep artam en to
IN S T Â N C IA
TUPLO
R E G IS T O
L IN H A
O B JE C T O
DI@2006

N º_d ep artam en to

N om e_d ep artam en to

10

P essoal

14

C om ercial

16

C ontabilidade

18

Inform ática

Diapositivo

29
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Modelo (Lógico) de Dados Relacional
Aplicam-se também os conceitos do Modelo
Conceptual de Dados:
–
–
–
–
–
–

–
DI@2006

Atributos;
Tipos de atributos (simples, compostos, derivados,
multivalor);
Chave primária;
Chave candidata;
Chave forasteira;
Relacionamentos (semântica, cardinalidade,
condições de participação, número de tabelas que
participam no relacionamento);
Instância.
Diapositivo

30
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Modelo (Lógico) de Dados Relacional
Existem três tipos de integridade:
• Integridade de domínio: os valores de cada coluna
devem ser atómicos e pertencentes ao domínio do
atributo;
• Integridade de entidade: os valores dos atributos que
correspondem à chave primária não podem ser nulos nem
iguais a outros já existentes na tabela. Notar que, como os
tuplos são diferenciados pela chave primária, se os valores
dos atributos correspondentes à chave primária fossem
nulos não seria possível distinguir entre tuplos.

• Integridade referencial: a chave forasteira numa tabela
deve referenciar sempre uma chave primária existente
numa outra tabela.
DI@2006

Diapositivo

31
I
n
f
o
r
m
á
t
i
c
a

Regras de Mapeamento
Regras de derivação do modelo de dados relacional
REGRAS DE MAPEAMENTO
D esignação
#D isc

....

D iscip lin a

#D isc

D esignação

D ocen te

D iscip lin a

N D oc

N om e

....

N D oc

N
L eccion ad a

D
e
p
.
G
e
s
t
ã
o

1
D ocen te
N D oc

....

....
....
N om e

Principais factores com influência nas regras de derivação:
Grau de relacionamento (1:1, 1:N, N:M);
Tipo de participação das entidades no relacionamento (obrigatória/opcional);
Tipo de relacionamento (binário, n_ário, etc.);
Atributos multivalor.
DI@2006

Diapositivo

32
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Diagrama de ocorrências
Exemplifica um relacionamento entre entidades.

P ro fe sso r
P1
P2
P3
P4

•
•
•
•

DI@2006

E n sin a

D iscip lin a

•
•
•
•

D1
D2
D3
D4

Diapositivo

33
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamento binário de grau 1:1
Caso 1 (1:1) - participação obrigatória das duas
entidades:

· Todos os docentes têm de leccionar uma só disciplina;
· Cada disciplina tem de ser assegurada por um docente.
1
D ocente

E nsina

D isciplina

Docente (Ndoc, Nome, Tel, #Disc, Prereq)
Regra 1

•
P2
•
P3
•
P1

1

• D1
• D2
• D3

Relacionamento binário de grau 1:1 e participação
obrigatória de ambas as entidades.

* É apenas necessária uma tabela;
* A chave primária dessa tabela pode ser a chave primária de
qualquer das entidades
DI@2006

Diapositivo

34
I
n
f
o
r
m
á
t
i
c
a

Relacionamento binário de grau 1:1
Caso 1 (1:1) - participação obrigatória de apenas uma
das entidades:
· Todos os docentes têm de leccionar uma só disciplina;
1
D ocente

D
e
p
.
G
e
s
t
ã
o

•
P2
•
P3
•
P1

1
E nsina

D isciplina

Docente (Ndoc, Nome, Tel, #Disc)

•
•
•
•

D1
D2
D3
D4

Disciplina (#Disc, Prereq)
Regra 2

Relacionamento binário de grau 1:1 e participação
obrigatória de apenas uma das entidades.
* São necessárias duas tabelas;
* A chave primária de cada entidade serve de chave primária na tabela
correspondente;
* A chave primária da entidade com participação não obrigatória tem de ser
usada como atributo na tabela correspondente à entidade cuja participação é
obrigatória.

DI@2006

Diapositivo

35
I
n
f
o
r
m
á
t
i
c
a

Relacionamento binário de grau 1:1
Caso 1 (1:1) – sem participação obrigatória de ambas as
entidades:
• Os docentes leccionam uma só disciplina, se não estiverem dispensados do
serviço docente;

• Cada disciplina é assegurada por um docente, excepto se for opcional e se o
número de inscrições for inferior a 15 alunos.
1

D
e
p
.
G
e
s
t
ã
o

D ocente

1
E nsina

D isciplina

Docente (Ndoc, Nome, Tel)

Leccionar (Ndoc, #Disc)

Disciplina (#Disc, Prereq)
Regra 3

•
P2
•
P3
•
P4
•
P1

•
•
•
•

D1
D2
D3
D4

Relacionamento binário de grau 1:1 e participação
não obrigatória de ambas as entidades.
* São necessárias três tabelas, uma para cada entidade e a terceira para o
relacionamento;
* A chave primária de cada entidade serve de chave primária na tabela correspondente;
* A tabela correspondente ao relacionamento terá entre os seus atributos as chaves
primárias das duas entidades.

DI@2006

Diapositivo

36
I
n
f
o
r
m
á
t
i
c
a

Relacionamento binário de grau 1:N
Caso 2 (1:N) - participação obrigatória do lado N:
(a participação obrigatória no lado 1 não afecta resultado)
• Os docentes podem leccionar várias disciplinas;
Cada disciplina tem de ser assegurada por um só docente.

1
D ocente

D
e
p
.
G
e
s
t
ã
o

N
E nsina

•
•
•
•

•
P2
•
P3
•
P1

D isciplina

Docente (Ndoc, Nome, Tel)

D1
D2
D3
D4

Disciplina (#Disc, Prereq, Ndoc)
Regra 4

Relacionamento binário de grau 1:N e participação
obrigatória do lado N.

* São necessárias duas tabelas;
* A chave primária de cada entidade serve de chave primária na tabela correspondente;
* A chave primária da entidade do lado 1 (sem participação obrigatória) tem de ser usada
como atributo na tabela correspondente à entidade do lado N (com participação
obrigatória).
DI@2006

Diapositivo

37
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamento binário de grau 1:N
Caso 2 (1:N) - participação não obrigatória do lado N:
(a participação obrigatória no lado 1 não afecta resultado)
•

Os docentes podem leccionar várias disciplinas;
Cada disciplina é assegurada por um docente, excepto se for opcional e se o número
de inscrições for inferior a 15 alunos.
• D1
P1
1
N
•
D ocente
E nsina
D isciplina
• D2
P2
•
• D3
P3
•
Docente (Ndoc, Nome, Tel)
Leccionar (#Disc, Ndoc)
• D4
Disciplina (#Disc, Prereq)
Regra 5

Relacionamento binário de grau 1:N e participação não
obrigatória do lado N.

* São necessárias três tabelas, uma para cada entidade e uma terceira para o
relacionamento;
* A chave primária de cada entidade serve de chave primária na tabela
correspondente;
* A tabela relativa ao relacionamento terá de ter entre os seus atributos as chaves
primárias de cada uma das entidades.
DI@2006

Diapositivo

38
I
n
f
o
r
m
á
t
i
c
a

Relacionamento binário de grau N:M
Caso 3 (N:M) - Quando o grau de relacionamento binário é
N:M, independentemente do tipo de participação, são sempre necessárias
3 tabelas.
• Um docente pode leccionar várias disciplinas
• Uma disciplina pode ser leccionada por vários docentes
N
D ocente

D
e
p
.
G
e
s
t
ã
o

•
P2
•
P3
•
P4
•
P1

M
E nsina

D isciplina

Docente (Ndoc, Nome, Tel)

Leccionar (#Disc, Ndoc)

•
•
•
•
•

D1
D2
D3
D4
D5

Disciplina (#Disc, Prereq)
Regra 6

Relacionamento binário de grau N:M

* São sempre necessárias três tabelas, uma para cada entidade e uma terceira para o
relacionamento;
* A chave primária de cada entidade serve de chave primária na tabela
correspondente;
* A tabela relativa ao relacionamento terá de ter entre os seus atributos as chaves
primárias de cada uma das entidades.
DI@2006

Diapositivo

39
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos binários múltiplos
Na maioria dos casos, uma entidade pode ter relacionamentos binários
com diversas entidades, ou seja, relacionamentos binários múltiplos.
Exemplo:
Um aluno pode inscrever-se em vários seminários;
Um seminário é dirigido por vários instrutores;
Um instrutor dirige vários seminários.
N
A luno

M
Inscrito

N
Sem inário

3 en tid ad es

M
D irigido

Instrutor

3 en tid ad es

A lu n o (N _ a lu no , ....)

Instr u tor (N _ Instru to r, ....)

S em in á rio (N _ S e m in á rio , ....)

S em in á rio (

Inscriçã o (N _ S e m in á rio , N _ a lu no , ...)

D irecçã o (N _ se m in ário , N _ Instruto r,..)

DI@2006

)

Diapositivo

40
I
n
f
o
r
m
á
t
i
c
a

Relacionamentos binários múltiplos
Supondo que um aluno tem de ser orientado por um instrutor nos vários
seminários (a intervenção do aluno é sempre a mesma, mas ocorre em
vários
seminários),
seria
necessário
acrescentar
outro
relacionamento, obtendo-se:
N
A luno

M
Inscrito

N
S em inário

N
D
e
p
.
G
e
s
t
ã
o

M
D irigido

Instrutor
1

O rientado

O novo relacionamento dá origem às seguintes entidades:
Aluno (N_aluno, ...., N_instrutor, ...)
Instrutor (N_Instrutor, ....)
O Modelo final seria:
Aluno (N_aluno, ...., N_instrutor, ...)
Instrutor(N_Instrutor, ....)
Seminário (N_Seminário, ....)
Inscrição (N_Seminário, N_aluno, ....)
Direcção (N_seminário, N_Instrutor,...)
DI@2006

Diapositivo

41
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos binários múltiplos
Supondo ainda, que o mesmo aluno pode ter vários instrutores, que poderão ser
diferentes consoante o seminário (intervenções diferentes em cada seminário ), o
relacionamento “orientado” passaria a ser do tipo N:M.

O modelo final passaria a ser:
Aluno (N_aluno, ....)
Instrutor(N_Instrutor, ....)
Seminário (N_Seminário, ....)
Inscrição (N_Seminário, N_aluno, ....)
Direcção (N_seminário, N_Instrutor,...)
Orientação (N_aluno, N_Instrutor,...)

Questão:
Quem é(são) o(s) orientador(es) de um aluno num dado seminário ?
só é possível determinar quais são os instrutores de um seminário e quais são os
orientadores de um dado aluno.
DI@2006

Diapositivo

42
Relacionamentos ternários

I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

S em in ário
M
N
A lu n o

Regra 7

P
In scrito

In stru to r

R elac io na me nto terná rio (e supe rior)

* São sempre necessárias quatro tabelas, uma para cada entidade e uma quarta para o
relacionamento;
* A chave primária de cada entidade serve de chave primária na tabela correspondente;
* A tabela relativa ao relacionamento terá de ter entre os seus atributos as chaves primárias
de cada uma das entidades;

* Num relacionamento de grau n são necessárias n+1 relações, de modo inteiramente
idêntico.
DI@2006

Diapositivo

43
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

Relacionamentos ternários
O modelo final passaria a ser:
Aluno (N_aluno, ....)
Instrutor (N_Instrutor, ....)
Seminário (N_Seminário, ....)
Inscrição (N_Seminário, N_aluno, N_instrutor,....)

Obs.: Se cada aluno tiver um só instrutor num dado
seminário, a chave primária da entidade seria somente
N_Aluno, N_seminário

DI@2006

Diapositivo

44
I
n
f
o
r
m
á
t
i
c
a

Resumo das regras do método
Entidade-Relacionamento
R e la c io n a m e n to
1 :1

N º E n tid a d e s

O b se r v a ç õ e s

1 :1

D
e
p
.
G
e
s
t
ã
o

1 :N

1 :N

N :M

DI@2006

A C h a v e p rim á r ia p o d e s e r a c h a v e d e
q u a lq u e r d a s e n tid a d e s.

2

A C h a v e d a e n tid a d e c / p a rtic ip a ç ã o n ã o
o b rig a tó r ia te m d e s e r a tr ib u to n a o u tra .

3

A e n tid a d e d o r e la c io n a m e n to te r á c o m o
a trib u to s a s c h a v e s d e a m b a s a s e n tid a d e s

2

A C h a v e d a e n tid a d e d o la d o 1 te m d e
s e r a tr ib u to n a e n tid a d e d o la d o N .

3

A e n tid a d e d o r e la c io n a m e n to te r á c o m o
a trib u to s a s c h a v e s d e a m b a s a s e n tid a d e s .

3

A e n tid a d e d o r e la c io n a m e n to te r á c o m o
a trib u to s a s c h a v e s d e a m b a s a s e n tid a d e s .

N +1

1 :1

1

A e n tid a d e d o r e la c io n a m e n to te r á c o m o
a trib u to s a s c h a v e s d e to d a s a s e n tid a d e s.

Diapositivo

45
I
n
f
o
r
m
á
t
i
c
a

Construção de Modelo de Dados
Relacional pelo método de
Entidades-Relacionamentos
* Construir o Diagrama de Entidades-Relacionamentos (DER):

MCD

Identificar todas as entidades importantes para a situação a tratar;

•

Identificar todos os relacionamentos;

•
D
e
p
.
G
e
s
t
ã
o

•

Identificar todos os atributos relevantes e associá -los a cada uma das
entidades já definidas;

•

Identificar as chaves primárias de cada entidade;

•

Desenhar o Diagrama de Entidades-Relacionamentos.

* Aplicar Regras de Mapeamento a cada relacionamento do DER.

MLD
* Conjunto de tabelas relacionadas (e normalizadas).
DI@2006

SGBDR

Diapositivo

46
I
n
f
o
r
m
á
t
i
c
a

D
e
p
.
G
e
s
t
ã
o

4.2 Sistemas de Gestão de Bases
de Dados
•
•
•
•

Introdução ao Microsoft Access
Criação de tabelas e definição de
relacionamentos
Ferramentas de interrogação de Bases de
Dados
Formulários e Relatórios

DI@2006

Diapositivo

47

Base de dados tic 10º ano

  • 1.
    I n f o r m á t i c a D e p . G e s t ã o 4.1 Noções deBases de Dados • Conceitos básicos introdutórios • Modelo Relacional – Conceitos fundamentais do Modelo Relacional – Restrições de Integridade – Metodologias de Desenho de Bases de Dados Relacionais DI@2006 Diapositivo 1
  • 2.
    I n f o r m á t i c a D e p . G e s t ã o O que éuma Base de Dados? • De uma forma genérica, qualquer conjunto de dados é uma Base de Dados (BD): – uma agenda com as moradas de pessoas conhecidas; – uma lista de CDs/DVDs; – um livro; – apontamentos tirados nas aulas; – os dados guardados nos computadores das Finanças sobre os contribuintes… DI@2006 Diapositivo 2
  • 3.
    I n f o r m á t i c a D e p . G e s t ã o O que éuma Base de Dados Relacional? • Base de dados em que os dados são organizados em conjuntos de tabelas que estão logicamente relacionadas através de campos comuns. • O utilizador pode consultar uma base de dados relacional (BDR) sem necessitar de conhecer a forma como os dados estão fisicamente armazenados. DI@2006 Diapositivo 3
  • 4.
    I n f o r m á t i c a D e p . G e s t ã o Para que utilizamosuma Base de Dados Relacional? • Efectuar consultas ad-hoc sobre os dados armazenados. • Exemplo: – procurar a morada e o telefone dos clientes do distrito de Viseu que efectuaram, nos últimos seis meses, encomendas de maçãs golden num valor superior a 1000 euros. DI@2006 Diapositivo 4
  • 5.
    I n f o r m á t i c a D e p . G e s t ã o Dados Vs Informação Osdados representam um conjunto de factos. Os dados só se transformam em informação quando relacionados ou interpretados de alguma forma. As pessoas, ao tomarem decisões, utilizam a informação e não os dados. A informação é uma necessidade diária em qualquer acto de gestão e tem um papel fundamental na previsão de actividades e resultados futuros de uma empresa. DI@2006 Diapositivo 5
  • 6.
    I n f o r m á t i c a Como criar umaBase de Dados Relacional? • Construir: – modelo conceptual de dados (MCD); Regras de Mapeamento D e p . G e s t ã o – modelo lógico de dados (MLD) Arquitectura da BDR Conjunto de tabelas relacionadas SGBDR DI@2006 Diapositivo 6
  • 7.
    I n f o r m á t i c a D e p . G e s t ã o Modelação de Dados •Modelo de dados:  Conjunto de ferramentas conceptuais para descrever os dados, as relações entre os dados, a semântica dos dados e as restrições dos dados;  É uma representação abstracta e simplificada de um sistema real, com a qual se pode explicar ou validar as características, no seu todo ou em partes. DI@2006 Diapositivo 7
  • 8.
    I n f o r m á t i c a D e p . G e s t ã o Modelo Conceptual deDados • Os objectos, as suas características e os relacionamentos têm uma representação fiel ao ambiente observado. • Utilizado ao nível da análise do problema a modelar. • Não se restringe o processo de modelação aos recursos disponibilizados por cada tecnologia de implementação; DI@2006 Diapositivo 8
  • 9.
    I n f o r m á t i c a D e p . G e s t ã o Modelo Lógico deDados • Os objectos, as suas características e relacionamentos têm uma representação de acordo com as regras de implementação e limitações impostas por algum tipo de modelação (ex: Relacional, Orientada aos Objectos); • Resulta da aplicação de derivação sobre um MCD; DI@2006 regras Diapositivo de 9
  • 10.
    I n f o r m á t i c a D e p . G e s t ã o Criar o ModeloConceptual de Dados • Diagrama de Entidades – Relacionamentos – Ponto de partida para o desenho da arquitectura da base de dados. – Identifica as “coisas” de maior importância num dado sistema do mundo real: as entidades, as propriedades das entidades (os atributos), e a forma como se relacionam entre si (os relacionamentos). N om e N D oc D esignação .... D ocen te #D isc E nsina .... D iscip lina – É facilmente compreendido pelos não-especialistas. DI@2006 Diapositivo 10
  • 11.
    I n f o r m á t i c a Conceitos da abordagemE-R C o n c eito D e sc riçã o Instâ n c ia O c o rrê nc ia d e u m a e n tid a d e A b stra c ç ã o d e o b je c to s o u c o nc e ito s d o m u n d o re a l E n tid a d e D e p . G e s t ã o A tr ib u to a c e rc a d o s q ua is q ue re m o s g ua rd a r in fo rm a ç ã o ; C a ra c te rístic a s p ró p ria s d a s e ntid a d e s ; E n vo lv im e nto o u a sso c ia ç ã o e n tre a s ins tâ nc ia s d a s R e la cio n a m e n to e ntid a d e s Exemplo de entidade e seus atributos: Docente (NC, nome, morada, localidade, Cód_Postal, telefone, e-mail) DI@2006 Diapositivo 11
  • 12.
    I n f o r m á t i c a D e p . G e s t ã o Atributos • O nome decada atributo deve ser único, singular e não ambíguo (utilizar prefixos ou sufixos. Exemplo: Data => Data_entrega ). • Todos os atributos devem ser não decomponíveis. Diz-se então que os atributos são atómicos, ou que são atributos elementares. N om e_aluno Exemplo de atributo não atómico N úm ero D isciplinas José Silva 1234 Física, Q uím ica, H istória ... ... ... • O conjunto de todos os valores possíveis para um dado atributo constitui o domínio desse atributo. • Existem vários tipos de atributos: simples, compostos, multivalor e derivados DI@2006 Diapositivo 12
  • 13.
    I n f o r m á t i c a Tipos de Atributos NP ró p rio A p elid o L o calizaçõ es N om e BI S ex o N ú m ero F u n cio n á rio D e p . G e s t ã o T em p o _ A ctiv id ad e D ata_ ín icio _ activ D ep a rta m en to • Atributos Simples (Exemplo: BI) • Atributos Compostos (Exemplo: Nome) Um atributo composto pode ser considerado simples, dependendo da situação a tratar. => Quando os atributos básicos são tratados separadamente, um atributo composto entra na entidade com todos os seus atributos básicos ( Funcionário: BI, Npróprio, Apelido, Sexo) DI@2006 Diapositivo 13
  • 14.
    I n f o r m á t i c a Tipos de Atributos NP róprio A pelido L ocalizações N om e BI S exo F u n cion ário D e p . G e s t ã o T em po_A ctividade • Atributos Derivados N úm ero D ata_ínicio_activ D ep artam en to (Exemplo: Tempo_actividade) Estes atributos devem ser identificados na análise, mas não devem fazer parte da entidade, pois podem ser calculados. • Atributos Multivalor (Exemplo: Localizações) => Para cada atributo multivalor cria-se uma nova entidade Número, Localização) DI@2006 Exemplo(Loc_Dep: Diapositivo 14
  • 15.
    I n f o r m á t i c a Entidades e Atributos Queatributos considerar na descrição de uma entidade? Entidades CÃO e DONO_DO_CÃO vistas pelo veterinário: CÃO D e p . G e s t ã o nom e_ d o_cã o raça DONO_DO_CÃO ID _d o_d ono DI@2006 sexo ID _d o_d ono nom e_ d o_d ono data_ nasc endereço peso sald o_da _c onta Diapositivo 15
  • 16.
    I n f o r m á t i c a D e p . G e s t ã o Entidades e Atributos Queatributos considerar na descrição de uma entidade? Entidades CÃO e DONO_DO_CÃO vistas pela administração municipal: CÃO n om e_ d o_cã o D O N O _D O _C Ã O raça ID _d o_d on o ID _ d o_ d o n o d ata_ lice n. n o m e _ d o_ d o n o p eso endereço O atributo endereço deveria ser subdividido ? É possível determinar número de cães por freguesia ? => endereço é um atributo composto que neste caso deveria ser subdividido DI@2006 Diapositivo 16
  • 17.
    I n f o r m á t i c a D e p . G e s t ã o Chave Primária eCandidata Instância: Ocorrência particular de uma entidade. Cada instância tem de ser identificada univocamente. Chave ou Identificador de uma entidade: Atributo ou conjunto de atributos que permitem identificar univocamente uma instância de uma entidade. Chave primária: Corresponde a uma das chaves possíveis e possui as seguintes características: • unívoca - os atributos da chave primária têm um valor unívoco para qualquer instância; • não redundante - se algum dos atributos que formam a chave primária for retirado, os restantes atributos deixam de ser unívocos • não nula - nenhum dos atributos que formam a chave primária poderá ter um valor nulo. DI@2006 Diapositivo 17
  • 18.
    I n f o r m á t i c a Chave Primária eCandidata Chave candidata: Atributo ou conjunto de atributos que podem ser usados como chave primária de uma entidade. Exemplo: N om e D e p . G e s t ã o N _E leitor N _B I F reguesia R ua Chaves candidatas: N_BI N_Eleitor, Freguesia Obs. Não podem existir na mesma freguesia eleitores com o mesmo número DI@2006 Diapositivo 18
  • 19.
    I n f o r m á t i c a Chave Forasteira ouExterna Chave forasteira ou chave externa: Atributo ou conjunto de atributos que aparecem como chave primária numa outra entidade relacionada. A chave forasteira permite estabelecer uma ligação (relacionamento) entre as entidades representadas. Exemplo: CÃO D e p . G e s t ã o n o m e _ d o_ c ã o DONO_DO_CÃO raça ID _d o_d on o se x o I D _ d o_ d o n o n om e_ d o_d on o d a ta _ n a sc endereço p e so s a ld o _ d a _ c o n t a O atributo ID_do_dono : na entidade CÃO é uma chave estrangeira na entidade DONO_DO_CÃO é a chave primária permite estabelecer uma ligação entre as entidades CÃO e DONO_DO_CÃO DI@2006 Diapositivo 19
  • 20.
    I n f o r m á t i c a Relacionamentos As entidades nãoestão isoladas, estão relacionadas com outras entidades => é necessário identificar relacionamentos para ser possível representar correctamente o mundo real. Relacionamento: Associação entre entidades D e p . G e s t ã o Relacionamento binário: Associação entre duas entidades Principais elementos de caracterização de um relacionamento: • • • • Semântica do relacionamento; Grau ou cardinalidade do relacionamento; Condições de participação das entidades no relacionamento; Número de entidades que participam no relacionamento (binário ou n-ário); DI@2006 Diapositivo 20
  • 21.
    I n f o r m á t i c a Relacionamentos Semântica do relacionamento Especificadaatravés de uma denominação (construção verbal) representativa do conceito observado, que deve ser lida da esquerda p/ direita e de cima p/ baixo. Grau ou cardinalidade do relacionamento D e p . G e s t ã o O número de ocorrências de uma entidade, que podem estar associadas com uma ocorrência de outra entidade permitem distinguir 3 tipos de relacionamentos: Relacionamento 1:1 (1 para 1) Relacionamento 1:N (1 para N) Relacionamento N:M (N para M) DI@2006 Diapositivo 21
  • 22.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos Tipos de relacionamentosbinários entre entidades (cardinalidade) R elacionam ento 1:1 D epartam ento 1 D irigido 1 Funcionário Um departamento é dirigido por um funcionário e um funcionário só pode dirigir um departamento R elacionam ento 1:N D epartam ento 1 C onstituído N Funcionário Um departamento é constituído por vários funcionários e um funcionário só pertence a um departamento R elacionam ento N :M Funcionário N T rabalha M Projecto Um funcionário pode trabalhar em vários projectos e num projecto podem trabalhar vários funcionários DI@2006 Diapositivo 22
  • 23.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos Condições de participaçãodas entidades no relacionamento Conceito de participação obrigatória - Uma entidade é de participação obrigatória num relacionamento se todas as instâncias dessa entidade estão relacionadas com pelo menos uma instância da outra entidade. – Nalguns casos a participação no relacionamento será obrigatória e para outros será opcional depende das particularidades do ambiente observado e das regras estabelecidas; – Este conceito contribui para o enriquecimento do MD, evitando ambiguidade. DI@2006 Diapositivo 23
  • 24.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos Exemplo 1: • Todasas disciplinas têm de ser asseguradas, sendo leccionadas por um ou mais docentes; • Os docentes podem estar dispensados de serviço docente ou podem leccionar várias disciplinas. N om e N D oc D esignação .... #D isc N D ocen te DI@2006 .... M E nsina D iscip lina Diapositivo 24
  • 25.
    I n f o r m á t i c a Relacionamentos Exemplo 2: • Algumasdisciplinas não são leccionadas pelo facto de terem sido retiradas do plano de estudos; • Todos os docentes leccionam, pelo menos uma disciplina. D e p . G e s t ã o N om e N D oc D esignação .... #D isc N D ocen te DI@2006 .... M E nsina D iscip lina Diapositivo 25
  • 26.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos Número de entidadesque participam no relacionamento • Um relacionamento pode envolver mais do que 2 entidades; • As associações binárias entre as entidades podem não mapear de forma correcta a informação desejada. Relacionamentos binários múltiplos: Os funcionários de uma empresa de prestação de serviços podem ser alocados a diferentes projectos e exercer funções distintas. N Função N DI@2006 U tilizada M N Projecto Envolve M Funcionário M D esem penha Diapositivo 26
  • 27.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos Quem é oAnalista de Sistemas de um determinado projecto? – A estrutura necessária para a derivação de um relacionamento ternário (ou n-ário) é uma agregação; – A agregação é requerida para expressar a função de um funcionário em determinado projecto. É necessário ter as 3 entidades associadas simultaneamente, através de um relacionamento ternário. F u ncionário M N F u nção DI@2006 P A locação P rojecto Diapositivo 27
  • 28.
    I n f o r m á t i c a D e p . G e s t ã o Modelo (Lógico) deDados Relacional No modelo relacional os dados são organizados recorrendo a uma só estrutura simples e familiar: a tabela, também denominada por relação. Todos os dados, bem como os relacionamento existentes entre estes, são representados por um conjunto de tabelas (relações) relacionadas entre si: • Cada tabela (relação) tem um nome único, pelo qual é referenciada; • Cada linha da tabela (tuplo) representa um conjunto de factos que descrevem uma ocorrência de uma entidade ou um relacionamento entre entidades; • Cada coluna da tabela (atributo) tem um nome e refere-se a um dado aspecto da entidade ou relacionamento representado; • Cada relação contém zero ou mais tuplos DI@2006 Diapositivo 28
  • 29.
    I n f o r m á t i c a Modelo (Lógico) deDados Relacional Equivalências da notação de descrição de conceitos (M odelo C onceptual de D ados) A T R IB U T O RELAÇÃO (T eoria dos C onjuntos) A T R IB U T O F IC H E IR O D e p . G e s t ã o E N T ID A D E (Inform ática T radicional) CAM PO TABELA (M odelo R elacional) COLUNA C LASSE (M odelo O rientado por O bjectos) A T R IB U T O D ep artam en to IN S T Â N C IA TUPLO R E G IS T O L IN H A O B JE C T O DI@2006 N º_d ep artam en to N om e_d ep artam en to 10 P essoal 14 C om ercial 16 C ontabilidade 18 Inform ática Diapositivo 29
  • 30.
    I n f o r m á t i c a D e p . G e s t ã o Modelo (Lógico) deDados Relacional Aplicam-se também os conceitos do Modelo Conceptual de Dados: – – – – – – – DI@2006 Atributos; Tipos de atributos (simples, compostos, derivados, multivalor); Chave primária; Chave candidata; Chave forasteira; Relacionamentos (semântica, cardinalidade, condições de participação, número de tabelas que participam no relacionamento); Instância. Diapositivo 30
  • 31.
    I n f o r m á t i c a D e p . G e s t ã o Modelo (Lógico) deDados Relacional Existem três tipos de integridade: • Integridade de domínio: os valores de cada coluna devem ser atómicos e pertencentes ao domínio do atributo; • Integridade de entidade: os valores dos atributos que correspondem à chave primária não podem ser nulos nem iguais a outros já existentes na tabela. Notar que, como os tuplos são diferenciados pela chave primária, se os valores dos atributos correspondentes à chave primária fossem nulos não seria possível distinguir entre tuplos. • Integridade referencial: a chave forasteira numa tabela deve referenciar sempre uma chave primária existente numa outra tabela. DI@2006 Diapositivo 31
  • 32.
    I n f o r m á t i c a Regras de Mapeamento Regrasde derivação do modelo de dados relacional REGRAS DE MAPEAMENTO D esignação #D isc .... D iscip lin a #D isc D esignação D ocen te D iscip lin a N D oc N om e .... N D oc N L eccion ad a D e p . G e s t ã o 1 D ocen te N D oc .... .... .... N om e Principais factores com influência nas regras de derivação: Grau de relacionamento (1:1, 1:N, N:M); Tipo de participação das entidades no relacionamento (obrigatória/opcional); Tipo de relacionamento (binário, n_ário, etc.); Atributos multivalor. DI@2006 Diapositivo 32
  • 33.
    I n f o r m á t i c a D e p . G e s t ã o Diagrama de ocorrências Exemplificaum relacionamento entre entidades. P ro fe sso r P1 P2 P3 P4 • • • • DI@2006 E n sin a D iscip lin a • • • • D1 D2 D3 D4 Diapositivo 33
  • 34.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamento binário degrau 1:1 Caso 1 (1:1) - participação obrigatória das duas entidades: · Todos os docentes têm de leccionar uma só disciplina; · Cada disciplina tem de ser assegurada por um docente. 1 D ocente E nsina D isciplina Docente (Ndoc, Nome, Tel, #Disc, Prereq) Regra 1 • P2 • P3 • P1 1 • D1 • D2 • D3 Relacionamento binário de grau 1:1 e participação obrigatória de ambas as entidades. * É apenas necessária uma tabela; * A chave primária dessa tabela pode ser a chave primária de qualquer das entidades DI@2006 Diapositivo 34
  • 35.
    I n f o r m á t i c a Relacionamento binário degrau 1:1 Caso 1 (1:1) - participação obrigatória de apenas uma das entidades: · Todos os docentes têm de leccionar uma só disciplina; 1 D ocente D e p . G e s t ã o • P2 • P3 • P1 1 E nsina D isciplina Docente (Ndoc, Nome, Tel, #Disc) • • • • D1 D2 D3 D4 Disciplina (#Disc, Prereq) Regra 2 Relacionamento binário de grau 1:1 e participação obrigatória de apenas uma das entidades. * São necessárias duas tabelas; * A chave primária de cada entidade serve de chave primária na tabela correspondente; * A chave primária da entidade com participação não obrigatória tem de ser usada como atributo na tabela correspondente à entidade cuja participação é obrigatória. DI@2006 Diapositivo 35
  • 36.
    I n f o r m á t i c a Relacionamento binário degrau 1:1 Caso 1 (1:1) – sem participação obrigatória de ambas as entidades: • Os docentes leccionam uma só disciplina, se não estiverem dispensados do serviço docente; • Cada disciplina é assegurada por um docente, excepto se for opcional e se o número de inscrições for inferior a 15 alunos. 1 D e p . G e s t ã o D ocente 1 E nsina D isciplina Docente (Ndoc, Nome, Tel) Leccionar (Ndoc, #Disc) Disciplina (#Disc, Prereq) Regra 3 • P2 • P3 • P4 • P1 • • • • D1 D2 D3 D4 Relacionamento binário de grau 1:1 e participação não obrigatória de ambas as entidades. * São necessárias três tabelas, uma para cada entidade e a terceira para o relacionamento; * A chave primária de cada entidade serve de chave primária na tabela correspondente; * A tabela correspondente ao relacionamento terá entre os seus atributos as chaves primárias das duas entidades. DI@2006 Diapositivo 36
  • 37.
    I n f o r m á t i c a Relacionamento binário degrau 1:N Caso 2 (1:N) - participação obrigatória do lado N: (a participação obrigatória no lado 1 não afecta resultado) • Os docentes podem leccionar várias disciplinas; Cada disciplina tem de ser assegurada por um só docente. 1 D ocente D e p . G e s t ã o N E nsina • • • • • P2 • P3 • P1 D isciplina Docente (Ndoc, Nome, Tel) D1 D2 D3 D4 Disciplina (#Disc, Prereq, Ndoc) Regra 4 Relacionamento binário de grau 1:N e participação obrigatória do lado N. * São necessárias duas tabelas; * A chave primária de cada entidade serve de chave primária na tabela correspondente; * A chave primária da entidade do lado 1 (sem participação obrigatória) tem de ser usada como atributo na tabela correspondente à entidade do lado N (com participação obrigatória). DI@2006 Diapositivo 37
  • 38.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamento binário degrau 1:N Caso 2 (1:N) - participação não obrigatória do lado N: (a participação obrigatória no lado 1 não afecta resultado) • Os docentes podem leccionar várias disciplinas; Cada disciplina é assegurada por um docente, excepto se for opcional e se o número de inscrições for inferior a 15 alunos. • D1 P1 1 N • D ocente E nsina D isciplina • D2 P2 • • D3 P3 • Docente (Ndoc, Nome, Tel) Leccionar (#Disc, Ndoc) • D4 Disciplina (#Disc, Prereq) Regra 5 Relacionamento binário de grau 1:N e participação não obrigatória do lado N. * São necessárias três tabelas, uma para cada entidade e uma terceira para o relacionamento; * A chave primária de cada entidade serve de chave primária na tabela correspondente; * A tabela relativa ao relacionamento terá de ter entre os seus atributos as chaves primárias de cada uma das entidades. DI@2006 Diapositivo 38
  • 39.
    I n f o r m á t i c a Relacionamento binário degrau N:M Caso 3 (N:M) - Quando o grau de relacionamento binário é N:M, independentemente do tipo de participação, são sempre necessárias 3 tabelas. • Um docente pode leccionar várias disciplinas • Uma disciplina pode ser leccionada por vários docentes N D ocente D e p . G e s t ã o • P2 • P3 • P4 • P1 M E nsina D isciplina Docente (Ndoc, Nome, Tel) Leccionar (#Disc, Ndoc) • • • • • D1 D2 D3 D4 D5 Disciplina (#Disc, Prereq) Regra 6 Relacionamento binário de grau N:M * São sempre necessárias três tabelas, uma para cada entidade e uma terceira para o relacionamento; * A chave primária de cada entidade serve de chave primária na tabela correspondente; * A tabela relativa ao relacionamento terá de ter entre os seus atributos as chaves primárias de cada uma das entidades. DI@2006 Diapositivo 39
  • 40.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos binários múltiplos Namaioria dos casos, uma entidade pode ter relacionamentos binários com diversas entidades, ou seja, relacionamentos binários múltiplos. Exemplo: Um aluno pode inscrever-se em vários seminários; Um seminário é dirigido por vários instrutores; Um instrutor dirige vários seminários. N A luno M Inscrito N Sem inário 3 en tid ad es M D irigido Instrutor 3 en tid ad es A lu n o (N _ a lu no , ....) Instr u tor (N _ Instru to r, ....) S em in á rio (N _ S e m in á rio , ....) S em in á rio ( Inscriçã o (N _ S e m in á rio , N _ a lu no , ...) D irecçã o (N _ se m in ário , N _ Instruto r,..) DI@2006 ) Diapositivo 40
  • 41.
    I n f o r m á t i c a Relacionamentos binários múltiplos Supondoque um aluno tem de ser orientado por um instrutor nos vários seminários (a intervenção do aluno é sempre a mesma, mas ocorre em vários seminários), seria necessário acrescentar outro relacionamento, obtendo-se: N A luno M Inscrito N S em inário N D e p . G e s t ã o M D irigido Instrutor 1 O rientado O novo relacionamento dá origem às seguintes entidades: Aluno (N_aluno, ...., N_instrutor, ...) Instrutor (N_Instrutor, ....) O Modelo final seria: Aluno (N_aluno, ...., N_instrutor, ...) Instrutor(N_Instrutor, ....) Seminário (N_Seminário, ....) Inscrição (N_Seminário, N_aluno, ....) Direcção (N_seminário, N_Instrutor,...) DI@2006 Diapositivo 41
  • 42.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos binários múltiplos Supondoainda, que o mesmo aluno pode ter vários instrutores, que poderão ser diferentes consoante o seminário (intervenções diferentes em cada seminário ), o relacionamento “orientado” passaria a ser do tipo N:M. O modelo final passaria a ser: Aluno (N_aluno, ....) Instrutor(N_Instrutor, ....) Seminário (N_Seminário, ....) Inscrição (N_Seminário, N_aluno, ....) Direcção (N_seminário, N_Instrutor,...) Orientação (N_aluno, N_Instrutor,...) Questão: Quem é(são) o(s) orientador(es) de um aluno num dado seminário ? só é possível determinar quais são os instrutores de um seminário e quais são os orientadores de um dado aluno. DI@2006 Diapositivo 42
  • 43.
    Relacionamentos ternários I n f o r m á t i c a D e p . G e s t ã o S emin ário M N A lu n o Regra 7 P In scrito In stru to r R elac io na me nto terná rio (e supe rior) * São sempre necessárias quatro tabelas, uma para cada entidade e uma quarta para o relacionamento; * A chave primária de cada entidade serve de chave primária na tabela correspondente; * A tabela relativa ao relacionamento terá de ter entre os seus atributos as chaves primárias de cada uma das entidades; * Num relacionamento de grau n são necessárias n+1 relações, de modo inteiramente idêntico. DI@2006 Diapositivo 43
  • 44.
    I n f o r m á t i c a D e p . G e s t ã o Relacionamentos ternários O modelofinal passaria a ser: Aluno (N_aluno, ....) Instrutor (N_Instrutor, ....) Seminário (N_Seminário, ....) Inscrição (N_Seminário, N_aluno, N_instrutor,....) Obs.: Se cada aluno tiver um só instrutor num dado seminário, a chave primária da entidade seria somente N_Aluno, N_seminário DI@2006 Diapositivo 44
  • 45.
    I n f o r m á t i c a Resumo das regrasdo método Entidade-Relacionamento R e la c io n a m e n to 1 :1 N º E n tid a d e s O b se r v a ç õ e s 1 :1 D e p . G e s t ã o 1 :N 1 :N N :M DI@2006 A C h a v e p rim á r ia p o d e s e r a c h a v e d e q u a lq u e r d a s e n tid a d e s. 2 A C h a v e d a e n tid a d e c / p a rtic ip a ç ã o n ã o o b rig a tó r ia te m d e s e r a tr ib u to n a o u tra . 3 A e n tid a d e d o r e la c io n a m e n to te r á c o m o a trib u to s a s c h a v e s d e a m b a s a s e n tid a d e s 2 A C h a v e d a e n tid a d e d o la d o 1 te m d e s e r a tr ib u to n a e n tid a d e d o la d o N . 3 A e n tid a d e d o r e la c io n a m e n to te r á c o m o a trib u to s a s c h a v e s d e a m b a s a s e n tid a d e s . 3 A e n tid a d e d o r e la c io n a m e n to te r á c o m o a trib u to s a s c h a v e s d e a m b a s a s e n tid a d e s . N +1 1 :1 1 A e n tid a d e d o r e la c io n a m e n to te r á c o m o a trib u to s a s c h a v e s d e to d a s a s e n tid a d e s. Diapositivo 45
  • 46.
    I n f o r m á t i c a Construção de Modelode Dados Relacional pelo método de Entidades-Relacionamentos * Construir o Diagrama de Entidades-Relacionamentos (DER): MCD Identificar todas as entidades importantes para a situação a tratar; • Identificar todos os relacionamentos; • D e p . G e s t ã o • Identificar todos os atributos relevantes e associá -los a cada uma das entidades já definidas; • Identificar as chaves primárias de cada entidade; • Desenhar o Diagrama de Entidades-Relacionamentos. * Aplicar Regras de Mapeamento a cada relacionamento do DER. MLD * Conjunto de tabelas relacionadas (e normalizadas). DI@2006 SGBDR Diapositivo 46
  • 47.
    I n f o r m á t i c a D e p . G e s t ã o 4.2 Sistemas deGestão de Bases de Dados • • • • Introdução ao Microsoft Access Criação de tabelas e definição de relacionamentos Ferramentas de interrogação de Bases de Dados Formulários e Relatórios DI@2006 Diapositivo 47