[cefetmg][bd] aula 2 - modelo relacional
TRANSCRIPT
![Page 1: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/1.jpg)
Modelo Relacional
Herbert Rausch Fernandes
Última atualização: 26/02/2015
![Page 2: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/2.jpg)
Alguns Conceitos - Esquema de Banco de Dados
Descrição das tabelas e atributos.
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 3: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/3.jpg)
Alguns Conceitos
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 4: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/4.jpg)
Alguns Conceitos - Domínio
● Domínio○ Conjunto de valores atômicos
● Atômico○ Cada valor é indivisível
![Page 5: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/5.jpg)
Alguns Conceitos - Domínio
● 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 6: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/6.jpg)
Alguns Conceitos - NULL
● Representam os valores de atributos que podem ser desconhecidos 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 (também
conhecido como valor indefinido)
![Page 7: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/7.jpg)
Alguns Conceitos - Chaves
● Duas tuplas não podem ter a mesma combinação de valores para todos os seus atributos.
Uma chave satisfaz duas propriedades:
● Duas tuplas distintas em qualquer estado da relação não podem ter valores idênticos para (todos) os atributos na chave.
● Superchave mínima○ não se pode remover nenhum atributo e ainda
manter uma restrição de exclusividade na condição
![Page 8: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/8.jpg)
Alguns Conceitos - Chaves
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 9: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/9.jpg)
Alguns Conceitos - 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○ Atributo sublinhado
● Outras chaves candidatas são designadas como chaves únicas
![Page 10: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/10.jpg)
Alguns Conceitos - Chaves
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 11: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/11.jpg)
Alguns Conceitos - Chaves
Nome de uma pessoa é uma chave candidata?
![Page 12: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/12.jpg)
Integridade de Chave
● 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○ Mantém a consistência entre tuplas nas duas
relações
![Page 13: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/13.jpg)
Integridade de Chave
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 14: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/14.jpg)
Integridade de Chave
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 15: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/15.jpg)
Integridade de Chave
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 16: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/16.jpg)
Integridade de Chave
Fonte: Sistemas de Banco de Dados. Elmasri e Navathe. 6ª edição.
![Page 17: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/17.jpg)
Violação de Integridade - Inserção de tupla
1. Inserir valores repetidos, ou NULL, para as chaves;2. Inserir valores em chave estrangeira inválido;
● Se uma inserção violar uma ou mais restrições○ A opção padrão é rejeitar a inserção
![Page 18: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/18.jpg)
Violação de Integridade - Remoção de tupla
● Pode violar apenas a integridade referencial○ Se a tupla que está sendo excluída for referenciada
por chaves estrangeiras de outras tuplasRestrictRejeita a Exclusão
CascadePropaga a exclusão excluindo tuplas que referenciam aquela que está sendo excluída
Set null ou set defaultModifica os valores de atributo que referenciam a causa da violação;
![Page 19: [CEFETMG][BD] Aula 2 - Modelo Relacional](https://reader034.vdocuments.net/reader034/viewer/2022042516/55ac55021a28ab6d6e8b461e/html5/thumbnails/19.jpg)
Violação de Integridade - Atualização de tupla
● Em geral não causa problemas
● Alterando uma chave primária/estrangeira○ Questões semelhantes ao Inserir/Excluir