17
Introdução ao Modelo Relacional Docente: Éberton da Silva Marinho e-mail: [email protected] INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE 01/06/2017

Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Introdução ao Modelo

Relacional

Docente: Éberton da Silva Marinho

e-mail: [email protected]

INSTITUTO FEDERAL DE EDUCAÇÃO,

CIÊNCIA E TECNOLOGIA DO RIO GRANDE

DO NORTE

01/06/2017

Page 2: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Sumário

Instalação do MySQL

Modelo Relacional

◦ Tabelas

◦ Chaves

◦ Domínio

Page 3: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Instalação do MySQL

Page 4: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

MODELO RELACIONAL

Page 5: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

abordagem relacional

Atualmente existente em diversos SGBDs

SGBD relacional é predominante no

mercado

Outros SGBDs herdaram alguns

conceitos dos SGBDs relacionais

Page 6: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Introdução ao modelo relacional

Coleção de tabelas, cada uma com um

nome único atribuído

Uma linha de uma tabela representa uma

relação entre conjunto de valores

contacliente

Page 7: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

tabelas

Conjunto não ordenado de linhas (tuplas)

Cada linha é formada por uma série de campos (atributos)

Cada campo é identificado por um nome de campo

Os campos homônimos de todas linhas de uma tabela formam uma coluna

Propriedades de um SGBD relacional◦ As linhas nas tabelas não são ordenadas

◦ Os valores dos campos são atômicos e monovalorados

◦ Existem linguagens de consulta associadas que permite o acesso por quaisquer critérios

Page 8: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Estrutura básica

Atributos

◦ Cabeçalhos da tabela

Domínio

◦ Conjunto de valores permitidos para cada atributo

Valores vazios

◦ NULL

Restrições de integridadeagência

Page 9: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Esquema de BD

Esquema de BD◦ É o projeto lógico do banco de dados

◦ Consiste de uma lista de atributos e seus domínios correspondentes

◦ Exemplos Conta=(número_conta, nome_agencia, saldo)

Agência=(nome_agência, cidade_agência, ativo)

Cliente=(nome_cliente, rua_cliente, cidade_cliente)

Depositante=(nome_cliente, número_conta)

Emprestimos=(número_empréstimo, nome_agência, conta, quantia)

Instância do BD◦ Dados armazenados no BD em um determinado

instante no tempo

Page 10: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Chaves

É preciso identificar uma tupla

unicamente em uma tabela

Chaves candidatas

◦ Qualquer superchave no qual exista um

subconjunto que também seja superchave

◦ Exemplo

Id_cliente

cpf

Page 11: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Chaves

Chaves primárias

◦ Chave candidata escolhida pelo projetista do BD para identificar

unicamente uma linha numa tabela

◦ Exemplo

Cpf

Id_cliente

Chaves estrangeiras

◦ Quando se inclui como atributo chaves primárias de outras

relações (tabelas)

◦ utilizada para realizar o relacionamento entre as tabelas

Page 12: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Diagrama de Banco de Dados

Page 13: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Chaves

Restrições que devem ser garantidas no uso de chaves estrangeiras

◦ Na inclusão de uma linha na tabela que contém a chave estrangeira, deve ser garantido que o valor da chave estrangeira tenha um correspondente na coluna da chave primária referenciada

◦ Na alteração do valor da chave estrangeira, deve ser garantido que o novo valor tenha um correspondente na coluna da chave primária referenciada

Page 14: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Chaves

Restrições que devem ser garantidas no uso de

chaves estrangeiras

◦ exclusão de uma linha da tabela que contém a

chave primária referenciada pela chave

estrangeira, deve ser garantido que na coluna

chave estrangeira não apareça o valor da

chave primária que está sendo excluída

◦ alteração do valor da chave primária

referenciada pela chave estrangeira, deve ser

garantido que na coluna chave estrangeira não

apareça o antigo valor da chave primária que

está sendo alterada

Page 15: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Domínio e valores vazios

Conjunto de valores que cada coluna pode assumir é denominado domínio da coluna ◦ ex. inteiro, caracter e conjunto de caracteres).

Adicionalmente, é necessário indicar se uma coluna pode assumir o valor vazio, visto que este tipo não pertence a nenhum conjunto válido

Coluna que não permite valores vazios são campos obrigatórios, caso contrário, campos opcionais.◦ Exemplo (na tabela anterior, quais são os

domínios das colunas? quem pode assumir valor vazio?)

Page 16: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Restrições de integridade

Principal motivação do uso de SGBDs é a integridade de dados, ou seja, refletem corretamente a realidade e são consistentes entre si

Para manter a integridade de dados, os SGBDs relacionais oferecem regras, denomidas de restrições de integridade

Classificação das restrições (abordagem relacional)

◦ integridade de domínio - respeito a definição do domínio da coluna

◦ integridade de vazio - campo obrigatório ou opcional

◦ integridade de chave - valores das chaves primárias e alternativas são únicas

◦ integridade referencial - valores nas chaves estrangeiras devem aparecer nas chaves primárias (inserção, remoção e atualização)

Page 17: Introdução ao Modelo Relacional - IFRNdocente.ifrn.edu.br/ebertonmarinho/disciplinas/programacao-com-ac… · Introdução ao modelo relacional Coleção de tabelas, cada uma com

Dúvidas

e-mail: [email protected]

Endereço eletrônico da disciplina:

http://docente.ifrn.edu.br/ebertonmarinho

17