Você está na página 1de 40

BANCO DE DADOS I

PROFESSOR EVERTON JEAN MORO


BANCO DE DADOS
✓ O que é um sistema de banco de dados;
✓ Quais as vantagens da utilização de banco de dados;
✓ Onde usamos banco de dados;
✓ Tipos de SGBD;
✓ Características e funcionalidades;
✓ Uma breve historia;
✓ Diferença de MER & DER;
✓ Banco de dados relacionais e não relacionais;
✓ Entidades, atributos e relacionamentos;
8/9/2022 2
COMPONENTES DE UM MER

Entidades

✓ Retângulos representam as entidades;


✓ Elipses representam os atributos; Atributos

✓ Losangos representam relacionamentos;


✓ Linhas são utilizadas Relacionamentos

8/9/2022 3
MODELAGEM
ENTIDADE
RELACIONAMENTO

8/9/2022 4
ENTIDADE

✓ Algo de importância para um usuário ou organização que precisa ser


representado em um banco de dados;
✓ Representa um tema, tópico ou conceito de negócio;
✓ Cada objeto de uma entidade é denominado de instância de entidade;
✓ Um entidade pode ter existência física ou abstrata;

8/9/2022 5
ENTIDADE

✓ Nomes de entidades devem começar com uma letra;


✓ Usar palavra no singular;
✓ Não pode ter espaços ou alguns caracteres especiais;
✓ Alguns caracteres como $ # _ são permitidos em alguns bancos de dados;
✓ Nomes de colunas devem ser únicos dentro de uma tabela;
✓ Nomes de entidades or tabelas devem ser únicos dentro do esquema;

8/9/2022 6
ATRIBUTOS

✓ São utilizados para descrever características de uma entidade, como por


exemplo, marca, cor, preço.
✓ Atributos possuem um tipo de dados (domínio) nome e valor especifico;
✓ Atributos podem ser de vários tipos como: Simples , composto, Multivalorado,
Determinante, Identificados, entre outros...

8/9/2022 7
ATRIBUTOS
✓ Atributo Simples
- Não possui nenhuma características especais, e são indivisíveis;
exe. nome da empresa, CPF, CPF

✓ Atributo composto
- É formado por itens menores, pode ser subdividido em outros atributos
exe. Endereço da empresa: Endereço -> Rua -> CEP -> Bairro -> Número
8/9/2022 8
ATRIBUTOS

✓ Atributo identificados ("chaves")


- Atributo determinante nunca se repete, já um identificador pode se repetir
exe. chave estrangeira

8/9/2022 9
ENTIDADE X RELAÇÃO
✓ Porque precisamos de relacionamentos ?
• Como os dados de diferentes entidades são armazenados em tabelas
distintas, geralmente precisamos combinar duas ou mais tabelas para
responder as perguntas específicas dos usuários;
• Por exemplo, podemos querer saber quais produtos, e em qual quantidade,
foram adquiridos por um cliente em particular. Precisamos entoa de dados
das tabelas de clientes e de pedidos e produtos para obter essa informação.

8/9/2022 10
TIPOS DE RELACIONAMENTO
pessoa
funcionário trabalha setor

se
• Unário; casa
• Binário; médico

• Ternário;
prescreve

paciente medicamento

8/9/2022 11
ENTIDADE X RELAÇÃO
✓ Porque precisamos de relacionamentos ?
• Como os dados de diferentes entidades são armazenados em tabelas
distintas, geralmente precisamos combinar duas ou mais tabelas para
responder as perguntas específicas dos usuários;
• Por exemplo, podemos querer saber quais produtos, e em qual quantidade,
foram adquiridos por um cliente em particular. Precisamos entoa de dados
das tabelas de clientes e de pedidos e produtos para obter essa informação.

8/9/2022 12
CHAVES

✓ Uma chave consiste em uma ou mais colunas de uma relação cujos valores
são usados para identificar de forma exclusiva uma linha ou conjunto de linha;
✓ Pode ser única (identifica uma única linha) ou não única (identifica um
conjunto de linhas);
✓ Únicas (unique): candidata, compotas, primaria, serrogada
✓ Não única (non-unique): estrangeira

8/9/2022 13
CHAVE CANDIDATA

✓ Atributo ou grupo de atributos com o potencial para se tornarem uma chave


primaria;
✓ Uma chave candidata que não seja usada como chave primaria será conhecida
como chave alternativa;
✓ Exe. Campos num_matricula e CPF em uma tabela de registro de aluno;

8/9/2022 14
CHAVE PRIMÁRIA

✓ É a chave candidata que foi escolhida para ser a chave principal na relação;
✓ Identifica de forma exclusiva os registros em uma tabela, não podendo ter
repetição de valores nem tampouco valor nulo;
✓ primary key / PK;

8/9/2022 15
CHAVE ESTRANGEIRA

✓ Coluna de uma tabela que estabelece um relacionamento com a chave


primaria (PK) de outra tabela;
✓ É a partir da chave estrangeira (foreign key / FK ) que sabemos com qual
registro em outra tabela um registro esta relacionado.

8/9/2022 16
CHAVE COMPOSTA

✓ Chave composta que é composta de dois ou mais atributos (colunas);


✓ Geralmente empregada quando não é possível utilizar uma única coluna de
uma tabela para identificar de forma exclusiva seus registros;

8/9/2022 17
CHAVE SURROGADA / SUBSTITUTA

✓ Valor numérico, único, adicionado a uma relação para servir como chave
primária;
✓ Não possui significado para os usuários e geralmente fica escondida nas
aplicação;
✓ As chaves substitutas são frequentemente usadas no lugar de uma chave
primaria composta;

8/9/2022 18
CHAVES PRIMÁRIAS E ESTRANGEIRAS
✓ Não é possível haver valores duplicados em uma chave primaria;
✓ No geral não é possível alterar o valor de uma chave primaria;
✓ Chaves estrangeiras são baseadas em valores de dados, classificados como
ponteiros lógicos;
✓ Um valor de uma chave estrangeira precisa corresponder a um valor existente
em uma chave primaria associada (ou valor de chave única). Caso contrario
deve ser nulo (null);
✓ Uma chave estrangeira deve referencia uma chave primaria ou uma coluna de
chave única;
8/9/2022 19
CHAVES PRIMÁRIAS E ESTRANGEIRAS

✓ Exemplo chave PK & FK

8/9/2022 20
CARDINALIDADE
✓ A cardinalidade diz respeito ao numero de itens que se relacionam nas entidades;
✓ A cardinalidade pode ser máxima ou mínima, significando respectivamente os
números mínimo é máximo de instâncias de cada entidade associadas ao
relacionamento;
✓ A cardinalidade máxima: trata-se do numero máximo de instâncias que podem
participar em uma relacionamento, pode ser 1 ou N (muitos);
✓ A cardinalidade mínima: trata-se do numero mínimo de instâncias que devem
obrigatoriamente participar em um relacionamento, ou seja zero é participaç~çao
opcional e um é obrigatório.
8/9/2022 21
CARDINALIDADE
Simbologia de Peter Chen
Mínimo

(1,1) ENTIDADE

Máximo

8/9/2022 22
CARDINALIDADE
Pé de Galinha (Crow's Foot)

Mínimo
ENTIDADE

Máximo

8/9/2022 23
CARDINALIDADE

✓ Um e apenas (1);
✓ De um à muitos (1..*);
✓ Zero ou um (0, :1);
✓ De zero a muitos (0..*)

8/9/2022 24
CARDINALIDADE

Cliente Solicita Encomenda

✓ Exemplo
✓ Cardinalidade mínima: um cliente para encomenda;
✓ Cardinalidade máxima: Um clientes para muitas encomendas;

8/9/2022 25
INTEGRIDADE DE DADOS
✓ Manutenção e garantia da consistência e precisão dos dados, sendo uma aspecto
crítico no design, implementação e uso de sistemas de armazenamento de dados. A
integridade é atingida por meio da aplicação de restrições de integridade.
Tipos de restrições de integridade:
o Integridade referencial;
o Integridade de domínio;
o Integridade de vazio;
o Integridade de chave;
o Integridade definida pelo usuário;
8/9/2022 26
INTEGRIDADE DE DADOS

Integridade de domínio:
✓ valores inseridos em uma coluna devem sempre obedecer a definição dos
valores que são permitidos para essa coluna;
✓ ex. em uma coluna que armazena preços de mercadorias, os valores
admitidos são do domínio numérico, ou seja apenas números.

8/9/2022 27
INTEGRIDADE DE DADOS
Fatores tipo de dado do campo:
• Representação interna do tipo de dado;
• Presença ou nao do dado;
• Intervalos de valores no domínio;
• Conjuntos de valores discretos;
Exe. atributo preço do produto: valor monetário
valor permitido: 25,33
valor nao permitidos: 25 reais e 33 centavos or -32,33

8/9/2022 28
INTEGRIDADE DE DADOS

Integridade de referencial:
✓ Uma restrição de integridade referencial assegura que valores de uma coluna
em uma tabela são validos baseados nos valores em uma outra tabela
relacionada;
✓ ex. se um produto de ID 10 foi cadastrado em uma tabela de vendas, então
um produto com o ID 10 deve existir na tabela de produtos relacionada;

8/9/2022 29
INTEGRIDADE DE DADOS
Atributo nome_produto: caracteres (desenhar fluxo no quadro)
valores permitidos (produtos cadastrados)
- agua
- refrigerante
- suco
Valores nao permitidos para venda (nao existentes na tabela de produtos);
- cerveja
8/9/2022 30
INTEGRIDADE DE DADOS

Integridade de referencial: atualização e exclusão


✓ Se um registro for excluído em uma tabela, então os registros relacionados em
outras tabelas que o referenciam talvez precisem ser excluídos.

8/9/2022 31
INTEGRIDADE DE DADOS
Integridade de vazio
✓ Este tipo de integridade informa se a coluna é obrigatório ou opcional , ou seja, se é possível nao inserir um
valor na coluna;
✓ Uma coluna de chave primaria, por exemplo sempre deve ter dados inseridos, e nunca pode estar vazia, para
nenhum registro;
✓ Valores nulos são representados por (NULL);
✓ Um valor null significa que nao existem dados é diferente de zero, espaço, string vazia ou tabulação;
✓ Os nulos podem ser problemáticos, pois indicam:
▪ Valor da coluna não é apropriado;
▪ Valor não foi inserido;
▪ Valor é desconhecido;

8/9/2022 32
INTEGRIDADE DE DADOS
Exemplos de valores Null
✓ Suponha uma tabela de cadastro de alunos.
✓ Todo aluno deverá ter um nome cadastrado, de modo que esse campo é obrigatório (atributo não-
nulo or not null);
✓ Nem todo aluno possui telefone, portanto esse campo não é obrigatório (atributo nulo or null);
Integridade de chave:
✓ Os valores inseridos na coluna de chave primaria (PK) devem ser sempre únicos não admitindo-se
repetições nesses valores;
✓ Desta forma, as tuplas (registros) serão sempre distintas;
✓ Os valores de chave primária também não podem ser nulos.

8/9/2022 33
INTEGRIDADE DE DADOS

Integridade definida pelo usuário:


✓ Diz respeito a regras de negocio especificas que são definidos pelo usuário do
banco de dados.
✓ Por exemplo, pode-se definir que uma coluna somente aceitará um conjunto
restrito de valores.

8/9/2022 34
DIAGRAMAÇÃO

O diagrama entidade relacionamento é a repsentação gráfica de um MER, que é


um modelo conceitual.
O uso de um diagrama facilita a modelagem e a comunicação entre os membros
da equipe de desenvolvimento, permitindo que todos falem a mesma "língua"
durante o processo.
A notação original do DER foi proposta por Peter Chen...

8/9/2022 35
DIAGRAMAÇÃO
Existem vários métodos para representar relacionamentos entre entidades as notações
gráficas mais utilizadas em modelagem de dados são:
- IDEF1X
- Bachman
- Min-Max
- Pé de Galinha (Crow's Foot)
- Martin
- UML
- Peter Chen
8/9/2022 36
DIAGRAMAÇÃO
Softwares para diagramação
Ferramentas CASE (Computer-Aided Software Engineering)
- Astah
- LucidChart
- erwin Data Modeler
- ERDPlus
- GenMuModel
- Star UML
- Microsoft Visio
- MySQL Workbench
- Visual Paradigm
8/9/2022 37
“A vida acontece onde depositamos nossa atenção. A velocidade com que as
coisas crescem na nossa vida é diretamente proporcional à quantidade de
atenção que dedicamos a elas. Isso vale para relacionamentos, projetos, vícios,
distrações, otimismo, pessimismo etc.”
- Paul Dolan (Livro Felicidade construída).

8/9/2022 38
HANDS ON !

8/9/2022 39
OBRIGADO!

8/9/2022 40

Você também pode gostar