MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados...
Transcript of MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados...
![Page 1: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/1.jpg)
MATA60 – BANCO DE DADOS Aula 5- Modelo Relacional
Prof. Daniela Barreiro Claro
![Page 2: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/2.jpg)
Histórico
Modelo em Redes e Hierárquico
Modelo Relacional
Restrições de Integridade
Chaves
Agenda
2 de X FORMAS - UFBA
![Page 3: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/3.jpg)
Sistema de Arquivos
BD em Rede
BD Hierárquico
BD Relacional
Histórico dos Modelos
![Page 4: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/4.jpg)
Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um banco de dados, isto é, dados, relacionamentos, semântica e restrições; Esquema – Descrição de um BD; Metadados – Conjunto de esquemas e restrições de um BD;
Instância - É o conjunto de dados armazenados no BD em um determinado instante (base de dados).
Histórico dos Modelos
![Page 5: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/5.jpg)
Modelos conceituais (modelos semânticos) – Descrevem a realidade observada – Exemplos: Modelo E-R , diagrama de classes UML Modelos lógicos – Também chamados de modelos de implementação. – Nível de abstração inferior ao modelo conceitual. – Podem ser classificados como: . modelos lógicos baseados em objetos; . modelos lógicos baseados em registros; – O banco de dados ZIM é o único modelo lógico associado ao modelo conceitual E-R;
Histórico dos Modelos
![Page 6: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/6.jpg)
Modelo de rede – Baseado em redes Modelo baseado em listas invertidas. Exemplo: ADABAS Modelo hierárquico – Baseado na estrutura de árvore Modelo Relacional - Introduzido por Codd em 1970. A estrutura de dados é uma relação Modelos OO – Exemplo: O2 e Jasmine Modelos Objeto-Relacional - Exemplo: Oracle 8i
Histórico dos Modelos
![Page 7: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/7.jpg)
Histórico dos Modelos
![Page 8: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/8.jpg)
Modelo Hierárquico
Desenvolvido na década de 60 para gerir
grande quantidade de dados em projetos de
manufatura
Representada por uma árvore de ponta cabeça
Segmento é análogo ao registro
Conjunto de relacionamentos 1-para-N entre os
segmentos
![Page 9: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/9.jpg)
Modelo Hierárquico
![Page 10: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/10.jpg)
Base para os modelos atuais
Desvantagens do modelo hierárquico:
Implementação complexa
Difícil de gerenciar
Falta independência estrutural
Sem padrões de implementação
Modelo Hierárquico
![Page 11: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/11.jpg)
Exemplo de um BD Hierárquico
21 Pessoal 142 25 Financeiro 143 28 Técnico 144
032 J Silva 380
112 R Pinto 390 121 V Simão 905
130 J Neves 640
092 R Silva 480
089 C Melo 520 074 M Reis 400
Departamento
Empregado
![Page 12: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/12.jpg)
Desenvolvido para representar relacionamentos complexos
de dados de modo mais eficaz.
Aumenta desempenho do banco de dados
Impõe um padrão de banco de dados
Conference on Data Systems Languages (CODASYL) criou o
DBTG
Database Task Group (DBTG): Ambiente definido para
facilitar o desenvolvimento de banco de dados
Modelo em Redes
![Page 13: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/13.jpg)
Esquema
Organização conceitual de todo o banco de dados na
visão do administrador.
Sub-esquema
Visão parcial dos dados pelos programas
Linguagem de gestão de dados (DML)
Define o ambiente em que os dados são manipulados
Modelo em Redes
![Page 14: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/14.jpg)
Possui similiaridades com o modelo
Registro pode ter mais de um pai
Coleção de registros usando o tipo de relacionamento 1:N
Possui dois tipos de registros
Proprietário
Equivalente aos pais no modelo hierárquico
Membro
Equivalente aos filhos no modelo hierárquico
Modelo em Redes
![Page 15: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/15.jpg)
Modelo em Redes
![Page 16: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/16.jpg)
Desvantagens do modelo Rede
Complexo
Falta de ferramenta de consultas ad hoc
Mudança estrutural no banco de dados pode gerar
problemas em todos os programas.
Modelo em Redes
![Page 17: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/17.jpg)
Exemplo de um BD de Rede
21 Pessoal 142
25 Financeiro 143
28 Técnico 144
032 J Silva 380
112 R Pinto 390
121 V Simão 905
130 J Neves 640
092 R Silva 480
089 C Melo 520
074 M Reis 400
Departamento
Empregado
![Page 18: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/18.jpg)
Desenvolvido por E. F. Codd (IBM) em1970
Tabela (relações)
Matriz consiste de linha/coluna.
Cada linha na relação é chamada de tupla.
Considerado impraticável em 1970.
Modelo conceitualmente simples, mas usa
intensivamente o processamento do computador.
Modelo Relacional
![Page 19: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/19.jpg)
Modelo Relacional
O modelo relacional representa um banco de dados como um conjunto de relações
Informalmente, uma relação é uma tabela de valores, onde cada linha representa uma coleção de dados relacionados
Cada linha de uma tabela representa um “fato” que tipicamente corresponde a uma entidade ou relacionamento do mundo real
![Page 20: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/20.jpg)
Modelo Relacional
Representação do BD como uma coleção de RELAÇÕES
Entidade(tipo Entidade)=relação
Instância de uma entidade (entidades)=tupla
Empregado CPF NOME TEL Endereço
859 Daniela 3241 Rua I
675 Pedro 3455 Rua H
Relação atributos
tup
las
![Page 21: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/21.jpg)
Modelo Relacional
Esquema de relação
Descreve a relação
R(A1,A2, ...,An), onde:
R Nome da relação
Ai Nome de um atributo
n Grau da relação
Cada Atributo Ai é o nome de um papel desempenhado por algum domínio D no Esquema da relação R
Exemplo:
Estudante(matricula, nome, telresidencial, endereço, idade, CR)
![Page 22: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/22.jpg)
Relação r(R)
Conjunto de tuplas: r = {t1,t2, ..., tm}
Cada tupla é uma lista ordenada de valores: t = <v1,v2,
..., vn>
Modelo Relacional
![Page 23: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/23.jpg)
A Relação
As tuplas de uma relação não são ordenadas
Registros em um arquivo são ordenados de acordo com
a posição em que são armazenados no disco
Daniela Claro 305-61-2425 373-1616 Rua H, 3456 32836636 null 9.50
![Page 24: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/24.jpg)
A Relação
Uma tupla é uma lista ordenada de valores
O valor de cada atributo em uma tupla é atômico Atributos compostos e multivalorados não são permitidos
O valor especial null é utilizado para representar valores não conhecidos ou não
aplicáveis a uma determinada tupla
![Page 25: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/25.jpg)
Restrições de Integridade
Restrições de domínio
Especificam que o valor de cada atributo A de uma relação deve ser um valor
atômico do domínio dom(A)
Restrições de chave
Por definição todas as tuplas são distintas
Um conjunto de atributos SK de um esquema de relação R tal que, para duas tuplas
quaisquer t1 e t2 de r(R), t1[SK] t2[SK] é uma super-chave de R
Super-chave default: todos os atributos
Uma chave de R é uma super-chave com a propriedade adicional de que nenhum
de seus subconjuntos também seja uma super-chave de R
{SSN,Name,Age} = super-chave; {SSN} = chave
![Page 26: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/26.jpg)
Restrições de Integridade
Restrições de chave
Um esquema de relação pode ter mais de uma chave chaves candidatas
Dentre as chaves candidatas de um esquema de relação, uma delas é
indicada como chave primária e as demais constituem as chaves
alternativas
![Page 27: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/27.jpg)
Restrições de Integridade
Restrições em valores null
Especifica se a um atributo é permitido ter valores null
Exemplo:
Todo Estudante deve ter um nome válido, não-null
![Page 28: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/28.jpg)
Esquema de um BD Relacional
![Page 29: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/29.jpg)
Restrições de Integridade
Além das restrições de domínio e de chave as
seguintes restrições de integridade são parte do
modelo relacional:
Restrição de integridade de entidade
Nenhum componente de uma chave primária pode ser nulo
![Page 30: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/30.jpg)
Restrições de Integridade
Restrição de integridade referencial Usada para manter a consistência entre tuplas de duas relações
Uma tupla em uma relação que se refere a outra relação deve referenciar uma tupla existente nesta outra relação
Aparecem devido aos relacionamentos entre entidades
Seja FK um conjunto de atributos de um esquema de relação R1 definido sobre o mesmo domínio dos atributos da chave primária PK de outro esquema R2. Então, para qualquer tupla t1 de R1:
t1[FK] = t2[PK], onde t2 é uma tupla de R2 ou
t1[FK] é nulo
![Page 31: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/31.jpg)
Restrições de integridade referencial
![Page 32: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/32.jpg)
A restrição de integridade referencial pode ser expressa pela notação
R1[FK] R2[PK],
onde PK é a chave primária de R2 e FK é a chave estrangeira de R1
Exemplos:
EMPLOYEE[DNO] DEPARTMENT[DNUMBER]
WORKS_ON[ESSN] EMPLOYEE[SSN]
WORKS_ON[PNO] PROJECT[PNUMBER]
Restrições de Integridade
![Page 33: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/33.jpg)
Instância de um BD Relacional
1
4
5
5
5
Houston
![Page 34: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/34.jpg)
Instância de um BD Relacional
![Page 35: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/35.jpg)
Opções de Exclusão da RIR
A cada RIR R1[FK] R2[PK] é possível associar uma opção de remoção que
especifica como a remoção de uma tupla de R2 é executada em relação a R1
As opções de remoção possíveis são:
bloqueio
propagação
substituição por nulos
Notação:
R1[FK] R2[PK],
onde op {b, p, n}
op
![Page 36: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/36.jpg)
Restrições de integridade referencial com opções de remoção
n
p
p
b b
b b
b
![Page 37: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/37.jpg)
Operações sobre Relações
As operações sobre um BD relacional podem ser
classificadas em:
Operações de recuperação (consulta)
Operações de atualização
Operações de atualização (sobre tuplas):
Inserção (insert)
Remoção (delete)
Modificação (modify)
![Page 38: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/38.jpg)
Operações sobre Relações
Operações de atualização
Restrições de integridade não podem ser violadas
Inserção
Restrição de Dominio: valor fora do dominio
Restrição de Chave: valor ja’ existe
Restrição de integridade de entidade: se chave for null
Restrição de integridade referencial: se chave estrangeira referencia tupla
inexistente
Ação default: rejeitar inserção (com explicação)
![Page 39: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/39.jpg)
Operações sobre Relações
Operações de atualização
Restrições de integridade não podem ser violadas
Remoção
Restrição de integridade referencial: tupla deletada é
referenciada por chaves estrangeiras
Ação default: rejeitar inserção (com explicação)
Segunda opção: propagar remoção de tuplas que violem uma
restrição de integridade referencial
Terceira Opção: Modificar o valor da chave estrangeira para nulo
![Page 40: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/40.jpg)
Operações sobre Relações
Operações de atualização
Restrições de integridade não podem ser violadas
Modificação
Modificar o valor de um atributo que nao e’ chave primaria ou
estrangeira não causa problemas (se o valor for do domínio, e, se
for null, que este valor seja permitido)
Modificar a chave primaria e’ igual a remover uma tupla e inserir
outra
Modificar chave estrangeira: SGBD deve verificar se novo valor do
atributo referencia tupla existente
![Page 41: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/41.jpg)
41
Resumindo...
Restrição de Domínio
O valor de cada atributo deve ser um valor atômico
Restrição de chaves e valores nulos
Duas tuplas distintas não podem ter valores idênticos para todos os
atributos da chave
Chave Primária=atributo-chave, Chaves candidatas
Se um atributo tiver que ter um valor ele será definido como NOT NULL
Restrição de Integridade de Entidade
Nenhum valor de chave primária pode ser NULL
![Page 42: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/42.jpg)
42
Resumindo...
Restrição de Integridade Referencial
É classificada entre duas relações
Mantém a consistência entre tuplas nas duas relações
Cada tupla em uma relação que faz referência a outra
relação deve-se referir a uma tupla existente nessa
relação
Chave estrangeira é o atributo da relação R1 que se
refere à chave primaria de R2
Q Prof. Daniela Barreiro Claro
![Page 43: MATA60 BANCO DE DADOSformas.ufba.br/dclaro/mata60/Aula 5 - Modelo Relacional.pdf · Modelo de dados – uma coleção de conceitos que são usados para descrever a estrutura de um](https://reader034.fdocumentos.com/reader034/viewer/2022050113/5f4ad952c32ae6636224d597/html5/thumbnails/43.jpg)
Facebook: /formasresearchgroup Twitter: /formasresearch
Semantic Formalisms and Applications Research Group
FORMAS - UFBA
Formas.ufba.br/dclaro
Disciplina: MATA60