Sunteți pe pagina 1din 11

Modelo Relacional

Fernanda Baio
UNIRIO

Material parcialmente extrado a partir das notas de aula de


Maria Luiza M. Campos, Arnaldo Rocha e Maria Cludia
Cavalcanti

Modelo Relacional

Modelo Lgico: ferramenta para descrio de


estruturas de dados em uma forma passvel de
ser processada por um SGBD
Nvel de abstrao mais baixo que um Modelo
Conceitual

No considera aspectos fsicos de


armazenamento, acesso e desempenho

Introduzido por Codd em 1970

Forte base terica, fundamentada na teoria dos conjuntos


Conceitos simples: relaes, atributos, tuplas e domnios
Base para a maioria dos SGBDs que dominam o mercado

Conceitos Gerais: Relao


Definio 1:

Dados os conjuntos S1, S2, ...., Sn, no necessariamente distintos,


diz-se que R uma relao sobre esses n conjuntos se R um
conjunto de m tuplas, nas quais o primeiro elemento assume
valores em S1, o segundo em S2, e assim por diante.
EXEMPLO:

S1

nome da relao

S3
S2

S4

Aluno
tupla 1

tupla m

Nelson

21

010110

Davi

22

010100

...

...

...

...

Maria

22

101000

Conceitos Gerais: Atributos


Definio 2: Dada uma relao R, define-se como seus atributos os nomes das
funes que mapeiam os valores de cada um dos elementos de
cada tupla nos respectivos conjuntos S1, S2, ...., Sn.
EXEMPLO:

S1

S3
S2

Idade Sexo Matrcula

Nome

ATRIBUTOS

S4

Aluno

relao

Nelson

21

010110

Davi

22

010100

...

...

...

...

Maria

22

101000

Conceitos Gerais: Domnios ...


Definio 3: Dada uma relao R, o domnio do atributo Aj , dom(Aj ), o
conjunto Sj no qual o atributo assume valores.
S3
S1
DOMNIOS

dom(Nome)

dom(Sexo)

S4

S2

dom(Matrcula)

dom(Idade)

atributos

tupla

Nome

Nelson

Idade

21

Sexo Matrcula

010110

Conceitos Gerais: Domnios

Todo domnio possui uma descrio fsica e outra


semntica.

a descrio fsica serve para identificar o tipo e o


formato dos valores que compem o domnio.
exemplo:

char(13), (dd)dddd-dddd

a descrio semntica serve para ajudar na


interpretao de seus valores.
exemplo:

Nmeros de telefone do Estado do RJ

Conceitos Gerais: Domnios


EXEMPLOS
domnio
A trib u to

T ip o

F o rm ato

N om eE stu dan te

char(50 )

A (50 )

S em n tica
n om es pr prios d e pesso as.

Id adeE stud ante

inteiro

99

in teiros entre 14 e 6 0
represen tan do a idad e de
p essoas em an os.

P esoE stud ante

float

99 9,99

n m eros d ecim ais, entre 30


e 2 00, represen tan do p eso s
d e pessoas, em q uiilos.

T elefon e

char(10 )

(9 9)9 999 -99 99

n m eros d e telefo ne
vlid os no B rasil.

D ep artam ento

char(5)

AAAAA

siglas dos d ep artam ento s


existentes na U E R J.

descrio fsica

descrio semntica

Conceitos Gerais: Domnios

O mesmo domnio pode se aplicar a vrios


atributos.
Os atributos de uma relao podem ser vistos
como diferentes interpretaes para o mesmo
domnio.
Nmeros
Locais de
Telefones

ESTUDANTE
Nome

Matrcula

Telefone
Casa

Endereo

Telefone Residencial de um
Estudante

Telefone
Escritrio

Idade

CR

Telefone Comercial de um
Estudante

Conceitos Gerais:
Esquema de uma Relao
R(A1, A2, ..., An)

usado para descrever uma relao


atravs da especificao de seus
atributos e domnios.

formado pelo nome da relao e uma


lista de atributos A1, A2, ..., An, onde Aj
o nome do papel desempenhado pelo
domnio Dj no esquema da relao R.

tambm chamado de inteno da


relao R.

Conceitos Gerais:
Esquema de uma Relao
Definio 4: O esquema de uma relao R, denotado por
R (A1:D1, A2:D2, ..., Am:Dm) , formado pelo nome da relao e
pela lista de seus atributos e respectivos domnios.
EXEMPLO:

ALUNO (Nome:
NomePessoas,
Idade:
IdadePessoas,
Sexo:
SexoPessoas,
Matrcula: CdigosMatrcula)

inteno da relao R

ALUNO

Nome

extenso ou instncia da relao R

esquema da relao ALUNO

Sexo

Matrcula

Nelson

Idade
21

010110

Davi

22

010100

...

...

...

...

Antonio

19

111111

Conceitos Gerais:
Inteno x Extenso

Para uma mesma inteno pode existir mais


de uma extenso.
ALUNO

Nome

Idade

Sexo

alunos de Computao

Matrcula

alunos de Telemtica

Nelson

21

010110

Pedro

22

9213025

Davi

22

010100

Luana

20

9421059

...

...

...

...

Antonio

19

111111

...

...

...

...

Henrique

19

9511032

Revisitando o Conceito de
Relao
Definio 5:

Uma relao ou instncia de relao r do esquema


R (A1:D1 , A2:D2 , ...., An:Dn), tambm denotada por r(R), um
conjunto de m-tuplas r = {t1, t2, ..., tm}, onde cada tupla t = < v1,
v2, ..., vn> uma lista ordenada de n valores, em que cada valor
vi, 1<= i <= n, ou nulo ou pertence ao domnio Di = dom(Ai).

dom(A1)

...

dom(An)

A1

...

An

esquema R

t1

v11

v12

...

...

...

...

...

v1n
...

tm

vm1

vm2

...

vmn

relao r(R)

Revisitando o Conceito de
Relao
Definio 6:

Uma relao ou instncia de relao do esquema


R (A1:D1 , A2:D2 , ...., An:Dn), r(R), um subconjunto do Produto
Cartesiano dos domnios que definem R, isto :
(dom(A1) x dom(A2) x ... x dom(An))

r(R)

O Produto cartesiano especifica todas as possveis combinaes de valores dos


domnios subjacentes, isto :
|dom(A1)| * |dom(A2)| * ... * |dom(An)|
Dessas possveis combinaes, a instncia r(R) de uma relao, num dado
instante, reflete apenas as tuplas que representam um estado particular do
mundo real.

Banco de Dados Relacional

o universo de um banco de dados relacional um conjunto


finito, no vazio, de relaes.

o esquema de um banco de dados relacional o conjunto dos


esquemas das relaes que o formam, isto :
R1
R2
....
Rm

(A11, A12, ........., A1n)


(A21, A22, ........., A2n)
(Am1, Am2, ......., Amn)

uma instncia de um banco de dados relacional o conjunto


das instncias de suas relaes.

o mesmo esquema pode se aplicar a diferentes instncias de


um banco de dados.

Caractersticas das
Relaes ...

No existe ordem entre as tuplas de uma relao.


ALUNO

ALUNO

Nome

Sexo

Matrcula

Nelson

21

010110

Davi

22

010100

...

...

...

...

Antonio

19

111111

Nome

Idade

Idade

Sexo

Matrcula
111111

Antonio

19

Davi

22

010100

Nelson

21

010110

...

...

...

...

Do ponto de vista conceitual, no


h diferena entre essas duas
relaes.

Caractersticas das
Relaes

Desde que seja mantida a correspondncia entre


atributos e valores, no existe ordem entre os atributos
de uma relao.
ALUNO

Nome

Sexo

Matrcula

Antonio

Idade
19

111111

...

...

...

...

Do ponto de vista conceitual, no


h diferena entre essas duas
relaes.
ALUNO

Matrcula Nome
111111
...

Sexo

Idade

Antonio

19

...

...

...

Caractersticas das
Relaes

Todos os atributos de uma relao devem ser atmicos,


isto , indivisveis em termos de valores e componentes.
ALUNO

Nome

Telefone

Cludia

245.9261

...
Antonio

Relao
Invlida!

Sexo

DataDeNascimento
Dia

Ms

Ano

10

03

1974

...

...

...

...

...

246.6666
325.9887
987.9231

25

08

1977

atributo
multivalorado

atributo
composto

Caractersticas das
Relaes ...

O esquema de uma relao pode ser interpretado como


uma declarao ou um tipo de assertiva.

Cada tupla da relao pode ser interpretada como um


fato ou uma instncia particular dessa assertiva.

ALUNO

Nome

Sexo

Matrcula

Antonio

19

111111

...

...

...

...

FATO:

Idade

ASSERTIVA: O esquema da relao


ALUNO afirma que, em
geral, aluno possui Nome,
Idade, Sexo e Matrcula.

Existe um ALUNO de Nome Antonio, com 19 anos de


Idade, do Sexo M, cuja Matrcula 111111.

Caractersticas das
Relaes

Numa relao, todos os atributos devem ter nomes


distintos.
Conceitualmente, no existe nada que impea dois atributos de terem o mesmo nome.
A restrio apenas de ordem prtica, para facilitar a consulta ao banco de dados.
Mesmo que pudessem ter nomes iguais poderiam assumir valores em domnios
diferentes.

Nenhuma relao possui atributos em duplicata.


Essa restrio decorre no apenas do fato de uma relao ser um conjunto, no sentido
matemtico do termo, como tambm do fato de suas tuplas representarem uma
assertiva sobre o mundo real. No faz sentido representar o mesmo valor duas vezes
no mesmo fato. Ex: Existe um ALUNO de Nome Antonio, com 19 anos de Idade, do
Sexo M, cujo nome Antonio.

Revendo o conceito de
Esquema Relacional

Um esquema Relacional de um Banco de Dados


formado por um conjunto de esquemas das
relaes S = {R1,R2,, Rm}
e um conjunto de restries de integridade IC
Uma Instncia de um esquema relacional de um
Banco de Dados (BD) um conjunto de instncias de
relaes pertencentes a um esquema Relacional (S)
BD = {r1, r2, rm}, tal que ri instncia de Ri, e tal
que as ris satisfazem IC.

Restries de Integridade

Restries de Domnio - especificadas atravs do tipo


de dados de cada atributo do esquema de uma relao.

Restries de Chave e de Integridade de Entidadeespecificadas atravs da definio de uma chave de


acesso em cada relao.

Restries de Integridade Referencial - especificadas


atravs de regras de relacionamento entre os
esquemas das relaes que compem o esquema do
banco de dados.-

Restries Semnticas - especificadas atravs de


regras sobre os esquema do banco de dados.

Restries de Domnio

Especifica que o valor de cada atributo A


deve ser um elemento atmico do
domnio de A.

Em geral, especificado atravs de tipos


primitivos de dados, tais como integer,
float, char, date, time, money, etc.

Tambm podem ser descritos atravs da


definio de subconjuntos de tipos
primitivos ou de listas enumeradas.

Restries de Chave:
O Conceito de Chave

O valor de um atributo-chave pode ser utilizado para identificar


uma tupla especfica numa relao.

Uma chave uma propriedade do esquema de uma relao, isto


, uma propriedade que deve ser respeitada por todas as instncias
da relao.

Atributos cujos valores podem ser duplicados, no devem ser


definidos como chaves de uma relao (Nome, por exemplo).

Em geral, uma relao pode ter mais de uma chave. Nesse caso,
cada chave da relao chamada de CHAVE CANDIDATA.

A chave candidata escolhida para identificar as tuplas de uma


relao chamada de CHAVE PRIMRIA. Em geral, entre todas
as chaves candidatas, escolhe-se para chave primria aquela com o
menor nmero de atributos

O conceito de SuperChave

Mais formalmente...

Seja sk um subconjunto de atributos de r


t1, t2 r / t1[sk] t2 [sk]
sk superchave

Uma chave uma superchave minimal

Exemplo:

No se pode retirar atributos


estudante (dre, nome, nascimento, sexo, pontos)
O atributo dre chave pq superchave e mnimo
Qq conj de atributos que envolva o dre superchave,
mas no chave

Integridade de Entidade

Integridade de Entidade: estabelece que nenhum dos atributos


pertencentes a chave-primria de uma relao pode ter valor nulo.

Isso para garantir a identidade individual das tuplas de uma


relao, uma vez que a chave-primria utilizada para identificar
cada uma de suas tuplas.

Restries de Integridade

Integridade Referencial: estabelece que qualquer tupla


pertencente a uma relao R1 que referencie uma outra
relao R2, tem de necessariamente referenciar uma tupla
existente em R2.

chave-estrangeira

EXEMPLO:

PROFESSOR

Nome

Matrcula

Sexo

24671

DESC

...

...

...

Arnaldo Rocha
...

Depto

chave-primria

DEPARTAMENTO

Sigla

Nome

Unidade

DESC

Departamento de Engenharia de
Sistemas e Computao

...

...

FEN
...

Conceitos Gerais:
Chave-Estrangeira
Definio 8:

Seja FK um conjunto de atributos de um esquema de relao R1 .


Diz-se que FK uma chave-estrangeira de R1 se FK satisfizer as
seguintes condies:
1. Os atributos pertencentes a FK assumirem valores dos mesmos
domnios correspondentes aos atributos PK da chave-primria de um
outro esquema de relao R2 ; e

2. O valor de FK , em qualquer tupla de R1, for nulo ou igual ao valor de


PK , em alguma tupla de R2.

Utilizadas para manter a consistncia entre as tuplas de duas relaes distintas


e relacionadas entre si.

Decorrem tipicamente dos relacionamentos entre entidades definidos no


modelo conceitual do banco de dados.

Chave-Estrangeira: Exemplo
EMPREGADO
Nome

SNome

Matrcula

DataNasc

Endereo

Sexo

Salrio

SuperMat

Depto

DEPARTAMENTO
DeptoNome

DeptoSigla

MatrculaGerente

PROJETO
DEPTO_LOCAL
Depto

PNome

PCdigo

PLocalizao

Depto

Localizao

TRABALHA_EM
MatrculaEmp

PCdigo

Horas

DEPENDENTE
MatrculaEmp

DependenteNome

Sexo

DataNasc

Parentesco

Chave-Estrangeira: Observaes

o valor de uma chave-estrangeira deve


necessariamente aparecer como valor da chaveprimria a que ela se refere.
o conjunto de restries referenciais de um banco
de dados pode ser representado atravs de um
diagrama referencial.
SuperMat
Depto

MatrculaEmp

DEPARTAMENTO

EMPREGADO

DEPENDENTE

MatrculaGerente
Depto

MatrculaEmp

PROJETO

PCdigo

DEPTO_LOCAL

TRABALHA_EM
Depto

Restries Semnticas

Especificadas atravs de regras sobre o


esquema do banco de dados.
EXEMPLOS
z

o salrio de um empregado tem de ser menor ou


igual ao salrio de seu supervisor.
o nmero de horas semanais que um empregado
pode trabalhar em projetos tem de ser menor ou
igual a 56.

Chave estrangeira:
Notao resumida
Exemplos:
Departamento(deptonome, deptosigla, matriculagerente)
Matriculagerente referencia empregado
Trabalha_em(matriculaemp, pcodigo, horas)
matriculaemp referencia empregado
pcodigo referencia projeto

S-ar putea să vă placă și