- Revisão Geral de Banco de Dados I
- BD x SGBD
- Arquitetura de SGBD
- MER - Modelo conceitual Peter Chen
- Cardinalidades mínima e máximas
- Tipos de relacionamentos unário, binário e ternário), auto-relacionamento
- Atributos (simples, composto, multivalorado, opcional, derivado, identificador)
3. prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados
Banco de Dados II – Aula 1: MER
BD x SGBD
“Bancos de dados ou Bases de Dados é um conjunto de
arquivos relacionados entre si com registros sobre pessoas,
lugares ou coisas. São coleções organizadas de dados
que se relacionam de forma a criar algum sentido
(Informação) e dar mais eficiência durante uma pesquisa ou
estudo.“
Kenneth C. Laudon e Jane P. Laudon
4. prof. Gustavo Zimmermann | contato@gust4vo.com
Sistema Gerenciador de Banco de Dados
Banco de Dados II – Aula 1: MER
BD x SGBD
“Um SGBD é o conjunto de programas de computador
(softwares) responsáveis pelo gerenciamento de um
banco de dados. Seu principal objetivo é retirar da
aplicação cliente a responsabilidade de gerenciar o acesso,
a manipulação e a organização dos dados.“
Microsoft
5. prof. Gustavo Zimmermann | contato@gust4vo.com
Funcionamento
Banco
de
Dados
SGBD
Aplicação 1
Aplicação 2
Aplicação 3
Aplicação N
1. O usuário emite uma solicitação de acesso.
2. O SGBD intercepta a solicitação e a analisa.
3. O SGBD inspeciona os esquemas externos (ou sub esquemas) relacionados àquele usuário, os
mapeamentos entre os três níveis, e a definição da estrutura de armazenamento.
4. O SGBD realiza as operações solicitadas no banco de dados armazenado.
Banco de Dados II – Aula 1: MER
BD x SGBD
6. prof. Gustavo Zimmermann | contato@gust4vo.com
Popularidade
| Ranking (JAN/2016)
Referência
http://db-engines.com/en/ranking
1º 6º
2º 7º
3º 8º
4º 9º
5º 10º
Banco de Dados II – Aula 1: MER
BD x SGBD
8. prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados II – Aula 1: MER
Arquitetura SGBD
Arquitetura
01. Arquitetura de um SGBD
02. Esquemas
03. Arquitetura das Camadas de um SGBD
04. Linguagens para Manipulação de Dados
05. Classificação dos SGBDs
9. prof. Gustavo Zimmermann | contato@gust4vo.com
Arquitetura de um SGDB
MODELAGEM DE DADOS
Alto Nível
Estrutura Lógica
Baixo Nível
Estrutura Física
MER, o seu principal conceito é
uma projeção dos dados que
deixa o mais próximo possível
da visão que o usuário tem dos
dados.
Modelo de Dados Físicos, é o
que fornece uma visão mas
detalhada do modo como os
dados estão armazenados no
computador.
Banco de Dados II – Aula 1: MER
Arquitetura SGBD
10. prof. Gustavo Zimmermann | contato@gust4vo.com
Esquemas : planejamento
Quando é usado o termo descrição do banco de dados,
entendemos como a chamada de “esquema de uma
banco de dados” que é especificada durante um projeto de
banco de dados.
Banco de Dados II – Aula 1: MER
Arquitetura SGBD
11. prof. Gustavo Zimmermann | contato@gust4vo.com
Arquitetura das Camadas
Usuários Finais
Esquema Conceitual
Esquema Interno
DADOS ARMAZENADOS
estrutura humana
nível EXTERNO
estrutura lógica
nível CONCEITUAL
estrutura física
nível INTERNO
Visão Externa
Mapeamento
Conceitual Externo
Mapeamento
Conceitual Interno
Banco de Dados II – Aula 1: MER
Arquitetura SGBD
12. prof. Gustavo Zimmermann | contato@gust4vo.com
Linguagens para Manipulação de Dados
DDL (Data Definition Language - Linguagem de Definição de
Dados) é definido pelo nível conceitual e interno.
Programador Digita a
Linguagem DDL
SGBD Compila a
Linguagem DDL
E recebe permissão pra
executar as instruções
Banco de Dados
guarda as novas
informações
01. 02. 03.
Banco de Dados II – Aula 1: MER
Arquitetura SGBD
13. prof. Gustavo Zimmermann | contato@gust4vo.com
Linguagens para Manipulação de Dados
Quando o desenvolvedor tem o conhecimento em uma linguagem SQL (Strucuture Query
Language) basta apenas usar a base dos comandos que formam as linguagens DDL, DCL e
a DML.
• DDL (comandos que criam, alteram ou removem objetos):
• CREATE, ALTER, DROP.
• DCL (comandos que ajudam na segurança do banco de dados):
• GRANT, REVOKE.
• DML (comandos responsáveis pela manipulação dos dados):
• SELECT, DELETE, UPDATE, INSERT.
Banco de Dados II – Aula 1: MER
Arquitetura SGBD
14. prof. Gustavo Zimmermann | contato@gust4vo.com
• Usuários: monousuários, são usados em estações de trabalho, minicomputadores e
máquinas de grande porte.
• Localização: possuem 2 estados localizado e distribuído. Quando é localizado todos os
dados encontram-se em um único disco, se for distribuído os dados estarão em várias
máquinas.
• Ambiente: possui 2 tipos, os homogêneo que é o ambiente formado por um único
SGBD e o heterogêneo que é o ambiente composto por diferentes SGBDs. Um exemplo
é ter um sistema rodando 2 tipos de banco de dados.
Classificação dos SGBDs
Banco de Dados II – Aula 1: MER
Arquitetura SGBD
16. prof. Gustavo Zimmermann | contato@gust4vo.com
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
Banco de Dados Relacionais
Edgar Frank Codd
Matemático Britânico em jun/1970 definiu as principais implantações necessárias
para o correto funcionamento de um banco de dados relacional.
Donald Chamberlin e Raymond Boyce
Desenvolveram, em 1974, uma linguagem de consulta que facilitava o acesso e a
manutenção de bancos de dados relacionais oferecendo os recursos necessários
para a sua utilização em larga escala o que atendia as necessidades do mercado.
Peter Pin-Shan Chen
Em 1976 definiu uma metodologia para a modelagem de projetos de bancos de
dados utilizando os bancos de dados relacionais.
17. prof. Gustavo Zimmermann | contato@gust4vo.com
Componentes do MER
• Entidades
• Atributos
• Relacionamento
MER
MER (Modelo de Entidade e Relacionamento) é uma ferramenta gráfica usada para projetar
e auxiliar na implementar de bancos de dados cuja a finalidade é identificar as entidades e
os seus relacionamentos.
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
18. prof. Gustavo Zimmermann | contato@gust4vo.com
• Entidades: São abstrações do mundo real que contem um conjunto
de informações inter-relacionadas e coerentes, estas informações são
chamadas de atributos.
MER : componentes
Nomeação:
Nome que a identifica,
geralmente formada
por um substantivo no
singular.
Representação Gráfica:
Retângulo com o nome ao centro
Funcionario
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
19. prof. Gustavo Zimmermann | contato@gust4vo.com
• Atributo: Cada informação que compõe uma Entidade, possui um
NOME, um TIPO e um TAMANHO (número de caracteres). De modo
genérico o “tipo” pode nominado como “texto”, “número”, “data e
hora”, entre outros.
MER : componentes
Nomeação:
• Começar com uma letra.
• NÃO conter espaço ou acentuação.
• Caracteres especiais apenas “_”.
Representação Gráfica:
Circulo com o nome ao lado
ou uma elipse com o seu nome
dataDemissao
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
20. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : atributos
Tipos de Atributo:
• Simples
• Composto
• Multivalorado
• Opcional
• Derivado
• Identificador
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
21. prof. Gustavo Zimmermann | contato@gust4vo.com
• Atributo (composto): Representa a estrutura das informações que
serão armazenados no atributo.
nome
primeiroNome
sobreNome
endereco
rua
complemento
numero
MER : atributos
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
22. prof. Gustavo Zimmermann | contato@gust4vo.com
• Atributo (multivalorado): Pode possuir diversos valores para uma
única entidade.
Funcionariotelefones
Representação Gráfica:
Um Circulo dentro do Outro
MER : atributos
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
23. prof. Gustavo Zimmermann | contato@gust4vo.com
• Atributo (opcional): Atributo que define opções de escolha.
Funcionario
Exemplo:
sexo
MER : atributos
masculino
feminino
Um Atributo Opcional, ao mesmo
tempo, pode ser um Atributo
Composto ou Multivalorado.
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
24. prof. Gustavo Zimmermann | contato@gust4vo.com
• Atributo (derivado): Atributo cujo valor pode ser derivado a partir de
outro atributo
Funcionarioidade
Representação Gráfica:
Um Circulo Pontilhado
dataNasc sexo
nome
MER : atributos
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
25. prof. Gustavo Zimmermann | contato@gust4vo.com
• Atributo (identificador): Permite identificar univocamente cada
entidade em um conjunto entidades.
FuncionarioRepresentação Gráfica:
Um Circulo Preenchido ou Com o
seu nome Sublinhado
rg sexo
nome
MER : atributos
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
26. prof. Gustavo Zimmermann | contato@gust4vo.com
• Relacionamento: Elemento responsável por definir as características
das ligações entre as entidades.
MER : componentes
Nomeação:
Nome expresso por um verbo ou uma
locução verbal.
Representação Gráfica:
Losango com o nome ao centro
Pertence
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
27. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : cardinalidade
Definição do tipo de Relacionamento entre as Entidades
• 1 para N
• N para 1
• N para N
• 1 para 1
Vencedor Clienteatende
1 N
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
28. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : cardinalidade
Definição do tipo de Relacionamento entre as Entidades
• 1 para N
• N para 1
• N para N
• 1 para 1
Funcionario Departamentopertence
N 1
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
29. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : cardinalidade
Definição do tipo de Relacionamento entre as Entidades
• 1 para N
• N para 1
• N para N
• 1 para 1
Cliente Produtocompra
N N
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
30. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : cardinalidade
Definição do tipo de Relacionamento entre as Entidades
• 1 para N
• N para 1
• N para N
• 1 para 1
Funcionario Departamentogerencia
1 1
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
31. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : cardinalidade
Definição do tipo de Relacionamento entre as Entidades
codigo
Funcionario Departamentogerencia
1 1
nome codigo nome
Exemplo: Sua implementação exige a inclusão das chaves primárias das
entidades envolvidas e se for necessário outros atributos
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
32. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : restrições
Melhor entendimento da situação
Funcionario Departamentopertence
N 1
Pode haver Funcionário sem Departamento associado?
(1 : N) (0 : 1)
(mínimo : máximo)
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
Dr. Carlos Aberto Heuser
Em 2001 propôs o uso da Restrição de Cardinalidade
33. prof. Gustavo Zimmermann | contato@gust4vo.com
MER : agregação
Definição de relacionamento com um conjunto de entidades
Cliente Produtocompra
N N
Funcionario
atende
N
1
Banco de Dados II – Aula 1: MER
MER – Modelo Entidade e Relacionamento
35. prof. Gustavo Zimmermann | contato@gust4vo.com
É a representação gráfica dos elementos definidos como parte do MER,
após o levantamento das entidades, atributos e relacionamentos.
Funcionario Departamentopertence
N 1
(0 : N) (1 : 1)
cod_Depto
codigo nome
dataAdmissao
codigo descricao
DER
O Modelo Entidade e Relacionamento gera o Diagrama de Entidade e Relacionamento
Banco de Dados II – Aula 1: MER
DER – Diagrama de Entidade e Relacionamento
36. prof. Gustavo Zimmermann | contato@gust4vo.com
EXERCÍCIO
Criar um Diagrama de Entidade e Relacionamento
para um Banco de Dados que armazenará
informações de um Sistema para uma Mecânica. O
Diagrama deverá ter no mínimo 3 entidades.
Banco de Dados II – Aula 1: MER
DER – Diagrama de Entidade e Relacionamento
37. prof. Gustavo Zimmermann | contato@gust4vo.com
EXERCÍCIO : resolução possível
Veiculo Clientepertence
1 1
Recepcionista
atende
N
1
(0 : 1) (0 : 1)
(0 : N)
(1 : 1)
endereco
nome
telefones
email
dataNasc
codClientecnh
placa marca
modelo
ano
cor
codAtendimento
problemaVeiculo
km
data
kmEntrada
kmRetirada
dataEntrada dataRetirada
rua
bairro
cep
cidadeEstado
numero
complemento
Banco de Dados II – Aula 1: MER
DER – Diagrama de Entidade e Relacionamento