Escolar Documentos
Profissional Documentos
Cultura Documentos
3 Modelorelacional
3 Modelorelacional
Modelos Conceituais
Representao com alto nvel de abstrao
modela de forma mais natural os fatos do mundo real, suas propriedades e seus relacionamentos independente de BD preocupao com a semntica da aplicao exemplo: modelo entidade-relacionamento
Matrcula
(0,N)
(1,1) Lotao
AnoIngresso
Alunos
Nome
Cursos
Cdigo Nome
Modelos Lgicos
Representam os dados em alguma estrutura (lgica) de armazenamento de dados
tambm chamados de modelos de BD dependente de BD exemplos
modelo relacional (tabelas) modelos hierrquico e XML (rvore) modelo orientado a objetos (classes - objetos complexos)
Alunos matrcula nome anoIngresso curso Cursos cdigo nome
Modelos de BD (Lgicos)
Suporte a mtodos de acesso
especificao dos conceitos do modelo (DDL)
dados, seus domnios, relacionamentos e restries
Esquema (lgico) de BD
resultado da especificao dos dados de um domnio de aplicao em um modelo de BD
Requisitos da Aplicao Modelo de BD
Esquema Lgico
Modelos de BD
1a gerao: Modelos pr-relacionais
modelos hierrquico e de rede
Modelo Relacional
Definido em 1970 (E. Codd IBM/Califrnia) Modelo com uma slida base formal
teoria dos conjuntos
Modelo simples
estruturas tabulares poucos conceitos
Integridade
restries bsicas para dados e relacionamentos
Manipulao
linguagens formais e SQL
Domnio
Conjunto de valores permitidos para um dado Exemplos
inteiro, string (domnios bsicos) data, hora (domnios compostos) [0, 120], (M, F) (domnios definidos)
Atributo
Um item de dado do BD Possui um nome e um domnio Exemplos
nome: string idade: [0,120]
Tupla
Um conjunto de pares (atributo, valor)
define uma ocorrncia de um fato do mundo real ou de um relacionamento entre fatos
Valor de um atributo
definido no momento da criao de uma tupla deve ser
compatvel com o domnio OU NULL (valor inexistente ou indeterminado) atmico (indivisvel: no-estruturado e monovalorado)
Exemplo
aluno: {(nome, Joo), (idade, 34), (matrcula, 03167034), ...}
Relao
Composto por um cabealho e um corpo Cabealho
nmero fixo de atributos (grau da relao) atributos no-ambguos
Corpo
nmero varivel de tuplas (cardinalidade da relao) ordem no relevante na teoria, uma relao um conjunto de tuplas na prtica, uma relao uma coleo de tuplas
neste caso, uma relao chamada tabela
Chave
Conjunto de um ou mais atributos de uma relao Tipos de chaves
chave primria
atributo(s) cujo (combinao de) valor(es) identifica(m) unicamente uma tupla em uma relao conceitos associados
chaves candidatas e chaves alternativas
exemplos
alunos: matrcula cidades: (nome, estado)
Chave
Tipos de chaves
chave estrangeira
atributo(s) de uma relao R1 que estabelece(m) uma equivalncia de valor com a chave primria de uma relao R2 se fk uma chave estrangeira em R1 que faz referncia chave primria pk de R2 ento: domnio(fk) = domnio(pk) R1 e R2 podem ser a mesma relao exemplos
alunos: curso (referncia a um cdigo de curso) cursos: cdigo
Implicaes da RIE
Dada uma tupla t de uma relao R
se ocorre incluso (I) ou atualizao (A) de t
se algum atributo da chave primria de t for NULL OU se existe outra tupla em R com o mesmo valor da chave primria de t ento IMPEDIMENTO seno EFETIVAO;
Implicaes da RIR
Dadas duas relaes (R1 e R2) e uma chave estrangeira che em R1 que faz referncia chave primria de R2, trs aes podem ser tomadas
IMPEDIMENTO
a operao de atualizao no efetivada
CASCATA
se ocorre E de uma tupla t de R2, ento E toda tupla de R1 tal que che faa referncia chave primria de t se ocorre A da chave primria de uma tupla t de R2, ento A o valor da che de toda tupla de R1 que faa referncia ao valor antigo da chave primria de t para o novo valor da chave primria de t
Implicaes da RIR
Dadas duas relaes (R1 e R2) e uma chave estrangeira che em R1 que faz referncia chave primria de R2, trs aes podem ser tomadas
ANULAO
se ocorre E ou A de uma tupla t de R2, ento para toda tupla de R1 tal que che faa referncia chave primria de t faa che = NULL
10
Implicaes da RIR
Situao 1: operaes sobre R1 (onde est che)
I ou A de uma tupla t
se che de t for NULL ento se che faz parte da chave primria de R1 ento IMPEDIMENTO seno EFETIVAO seno se no existe tupla k de R2 tal que o valor de che seja igual ao valor da chave primria de k ento se che faz parte da chave primria de R1 ento IMPEDIMENTO seno IMPEDIMENTO ou ANULAO seno EFETIVAO
E de uma tupla t
nenhuma consistncia a ser feita
Implicaes da RIR
Situao 2: operaes sobre R2
E de uma tupla t ou A da sua chave primria
para toda tupla k de R1 cuja chave estrangeira che faa referncia chave primria de t faa se che faz parte da chave primria de R1 ento IMPEDIMENTO ou CASCATA seno IMPEDIMENTO ou CASCATA ou ANULAO
I de uma tupla t
nenhuma consistncia a ser feita
11