bdm aula 3 - modelo relacional e restrições de integridade

38
Bancos de Dados Multimídia Ticianne Darin

Upload: ticianne-darin

Post on 21-Jun-2015

8.437 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Bdm   aula 3 - modelo relacional e restrições de integridade

Bancos de Dados

Multimídia

Ticianne Darin

Page 2: Bdm   aula 3 - modelo relacional e restrições de integridade

Modelo Relacional e Restrições de

Integridade

Page 3: Bdm   aula 3 - modelo relacional e restrições de integridade

Modelo Relacional

• Introduzido pelo pesquisador da IBM E. Codd [1970]

• Fundamentação Teórica sólida

Page 4: Bdm   aula 3 - modelo relacional e restrições de integridade

Modelo Relacional

• Razões do sucesso

– Estrutura de dados simples e uniforme

• Um banco de dados relacional é um conjunto de Relações

• Cada relação é um conjunto de linhas ou tuplas

• Cada tupla é uma lista de valores de atributos

• Cada valor de atributo é retirado de um domínio

– Simplicidade e base matemática

Page 5: Bdm   aula 3 - modelo relacional e restrições de integridade

Conceitos de Modelo Relacional

• Representa o banco de dados como uma coleção de relações

• Tabela de valores – Linha

• Representa uma coleção de valores de dados relacionados

• Normalmente corresponde a uma entidade ou relacionamento do mundo real

• Tupla

– Coluna • Como interpretar os valores das linhas

• Único tipo de dados

Page 6: Bdm   aula 3 - modelo relacional e restrições de integridade

Conceito de Modelo Relacional

Page 7: Bdm   aula 3 - modelo relacional e restrições de integridade

Conceito de Modelo Relacional

Empregado(nome: string, dataNasc.:Date, telefone:Integer )

Nome da Relação

Nome de Atributo

Domínio do

Atributo

Page 8: Bdm   aula 3 - modelo relacional e restrições de integridade

Domínios, Atributos, Tuplas

e Relações

• Domínio D

– Conjunto de valores atômicos

• Atômico

– Cada valor é indivisível

• Especificando um domínio

– Tipo de dado especificado para cada domínio

Page 9: Bdm   aula 3 - modelo relacional e restrições de integridade

Domínios, Atributos, Tuplas e

Relações

• Esquema Relacional R

– Indicado por R(A1, A2, ...,An)

– Composto de uma relação R e uma lista de atributos, A1, A2, ..., An

• Atributo Ai

– Nome de um papel desempenhado por algum domínio D no esquema de relação R

• Grau (ou aridade) de uma relação

– Número de atributos n desse esquema de relação

Page 10: Bdm   aula 3 - modelo relacional e restrições de integridade

Domínios, Atributos, Tuplas

e Relações

• Relação (ou estado de relação)

– Conjunto de n-tuplas r = {t1, t2, ..., tm}

– Cada n-tupla t

• Lista ordenada de n valores t =<v1, v2, ..., vn

• Cada valor vi, 1 ≤ i ≤ n, é um elemento de dom(Ai) ou é um valor especial NULL

Page 11: Bdm   aula 3 - modelo relacional e restrições de integridade

Domínios, Atributos, Tuplas

e Relações

• Relação (ou estado de relação) r(R)

– Relação Matemática de grau n sobre os domínios dom(A1), dom(A2), ..., dom(An)

– Subconjunto do produto Cartesiano dos domínios que definem R:

• r(R) ⊆ (dom(A1) × dom(A2) × ... × dom(An))

Page 12: Bdm   aula 3 - modelo relacional e restrições de integridade

Domínios, Atributos, Tuplas e

Relações

• Cardinalidade

– Número total de valores no domínio

• Estado de relação atual

– Estado de relação em determinado momento

– Reflete apenas as tuplas válidas que representam um estado em particular do mundo real

• Nomes de atributo

– Indicam diferentes papéis, ou interpretações, do domínio

Page 13: Bdm   aula 3 - modelo relacional e restrições de integridade

Características das Relações

• Ordenação de tuplas em uma relação

– Relação definida como um conjunto de tuplas

• Ordem dos valores dentro de uma tupla

– A ordem dos atributos e seus valores não é tão importante

Page 14: Bdm   aula 3 - modelo relacional e restrições de integridade

Características das

Relações

• Definição alternativa de uma relação

– Tupla pode ser considerada um conjunto de pares (<atributo>, <valor>)

• Usa-se a primeira definição da relação

– Os atributos e os valores dentro das tuplas são ordenados

– Notação simplificada

Page 15: Bdm   aula 3 - modelo relacional e restrições de integridade

Características das Relações

Page 16: Bdm   aula 3 - modelo relacional e restrições de integridade

Características das

Relações

• Valores nas tuplas

– Cada valor em uma tupla é um valor atômico

– Atributos multivalorados e compostos não são permitidos

– Atributos multivalorados

• Precisam ser representados por relações separadas

– Atributos compostos

• Representados apenas por seus atributos de componentes simples no modelo relacional básico

Page 17: Bdm   aula 3 - modelo relacional e restrições de integridade

Características das

Relações

• Valores NULL

– Representam os valores desconhecidos de atributos ou não se aplicam a uma tupla

– Significados para valores NULL

• Valor desconhecido

• Valor existe mas não está disponível

• Atributo não se aplica a esta tupla (valor indefinido)

Page 18: Bdm   aula 3 - modelo relacional e restrições de integridade

Características das

Relações

• Interpretação (significado) de uma relação

– Afirmação

• Cada tupla na relação é um fato ou uma instância em particular da afirmação

– Predicado

• Valores de cada tupla são interpretados como valores que satisfazem o predicado

Page 19: Bdm   aula 3 - modelo relacional e restrições de integridade

Restrições em Modelo

Relacional

• Restrições de Integridade

– Restrições sobre os valores reais em um estado do banco de dados

– Derivam de regras no minimundo

– Restrições inerentes baseadas no modelo ou restrições implícitas

Page 20: Bdm   aula 3 - modelo relacional e restrições de integridade

Restrições em Modelo

Relacional

• Restrições baseadas em esquemas ou restrições explícitas

– Podem ser expressas diretamente nos esquemas do modelo de dados

• Restrições baseadas na aplicação

– Expressas e impostas pelos programas de aplicação

Page 21: Bdm   aula 3 - modelo relacional e restrições de integridade

Restrições de Domínio

• Normalmente incluem: – Dados numéricos padrão para inteiros e

números reais

– Caracteres

– Booleanos

– Cadeia de caracteres de tamanho fixo

– Cadeia de caracteres de tamanho variável

– Data, hora, marcador de tempo

– Moeda

– Outros tipos de dados especiais

Page 22: Bdm   aula 3 - modelo relacional e restrições de integridade

Restrições de chave

• Duas tuplas não podem ter a mesma combinação de valores para todos os seus atributos.

• Superchave

– Duas tuplas distintas em qualquer estado r de R não podem ter o mesmo valor de SCh

• Chave

– Superchave de R

Page 23: Bdm   aula 3 - modelo relacional e restrições de integridade

Chaves

• A remoção de qualquer atributo A de Ch deixa um conjunto de atributos Ch’ que não é mais uma superchave de R

– Duas tuplas distintas não podem ter valores idênticos para (todos) os atributos na chave.

– Não se pode remover nenhum atributo e ainda manter uma restrição de exclusividade na condição

Page 24: Bdm   aula 3 - modelo relacional e restrições de integridade

Chaves

• Chave candidata

– Um esquema de relação pode ter mais de uma chave

• Chave primária da relação

– Designada entre as chaves candidatas

• Outras chaves candidatas são designadas como chaves únicas

Page 25: Bdm   aula 3 - modelo relacional e restrições de integridade

Restrições de chave

Page 26: Bdm   aula 3 - modelo relacional e restrições de integridade

Integridade e Integridade

Referencial

• Restrição de integridade de entidade

– Nenhum valor de chave primária pode ser NULL

• Restrição de Integridade Referencial

– Especificada entre duas relações (chave estrangeira)

– Mantém a consistência entre tuplas nas duas relações

Page 27: Bdm   aula 3 - modelo relacional e restrições de integridade

Integridade Referencial e Chaves

Estrangeiras

• Regras de chaves estrangeiras:

– Os atributos em ChE têm o mesmo domínio (ou domínios) que os atributos de chave primária ChP

– Um valor de ChE em uma tupla t1 do estado atual r1(R1) ocorre como um valor de ChE para alguma tupla t2 no estado atual r2(R2) ou é NULL

Page 28: Bdm   aula 3 - modelo relacional e restrições de integridade

Integridade Referencial e Chaves

Estrangeiras

• Todas as restrições de integridade deverão ser especificadas no esquema de banco de dados relacional

Page 29: Bdm   aula 3 - modelo relacional e restrições de integridade
Page 30: Bdm   aula 3 - modelo relacional e restrições de integridade

Outros Tipos de Restrições

• Restrições de integridade semântica

– Mecanismos chamados triggers (gatilhos) e assertions (afirmações) são utilizados

– É mais comum verificar esses tipos de restrições em programas de aplicação

Page 31: Bdm   aula 3 - modelo relacional e restrições de integridade

Operações de Atualização e

Transações

• As operações do modelo relacional podem ser categorizadas em recuperações e atualizações.

• Operações básicas que podem mudar os estados das relações no banco de dados:

– Inserir

– Excluir

– Alterar (ou Modificar)

Page 32: Bdm   aula 3 - modelo relacional e restrições de integridade

A Operação Inserir

• Oferece uma lista de valores de atributo para que uma nova tupla t possa ser inserida em uma relação R

• Pode violar qualquer um dos quatro tipos de restrições

– A opção padrão é rejeitar a inserção

Page 33: Bdm   aula 3 - modelo relacional e restrições de integridade

A Operação Excluir

• Pode violar apenas a integridade referencial – Restrict

• Rejeita a Exclusão

– Cascade • Propaga a exclusão excluindo tuplas que

referenciam aquela que está sendo excluída

– Set null ou set default • Modifica os valores de atributo que referenciam a

causa da violação;

Page 34: Bdm   aula 3 - modelo relacional e restrições de integridade

A Operação Alterar

• Necessário especificar uma condição sobre os atributos da relação – Selecionar a tupla (ou tuplas) a serem

modificadas

• Em geral não causa problemas

• Alterando uma chave primária/estrangeira – Questões semelhantes ao Inserir/Excluir

Page 35: Bdm   aula 3 - modelo relacional e restrições de integridade

“Testando” restrições

Page 36: Bdm   aula 3 - modelo relacional e restrições de integridade
Page 37: Bdm   aula 3 - modelo relacional e restrições de integridade
Page 38: Bdm   aula 3 - modelo relacional e restrições de integridade

Até a próxima aula!

Ora, a fé é a certeza daquilo que esperamos e a prova das coisas que não vemos. Hebreus 11:1