Buscar

BD AULA 02 - Modelagem de dados-1

Prévia do material em texto

Banco de Dados 
Escola Técnica 
Jurandir Bezerra Lins 
AULA 02 
Banco de Dados 
• Colocar em prática o conteúdo 
necessário para o desenvolvimento da 
disciplina. 
• Revisar alguns conceitos já 
ministrados. 
Objetivo da aula 
2 
Banco de Dados 
REVISÃO GERAL 
 
• PLANEJAMENTO DE BD 
• MINI-MUNDO 
• MODELAGEM DE DADOS 
– MODELO CONCEITUAL 
– MODELO LÓGICO 
– MODELO FÍSICO 
 
 
 
 
 
 
Agenda 
3 
Banco de Dados 
Planejamento do banco de dados 
 Antes de criar um banco de dados é 
necessário realizar um estudo sobre quais 
os dados que você precisará armazenar 
para obter as informações adequadas, ou 
seja, que lhe serão úteis, e também seus 
respectivos tipos. O planejamento é 
primordial para que se garanta que dados 
não faltarão ou serão repetidos, que as 
tabelas e campos que armazenarão os 
dados sejam definidos corretamente, entre 
outros. 
4 
Banco de Dados 
O minimundo 
 Todo banco de dados e 
criado através o chamado “mini-
mundo” que nada mais é do que a 
analise lógica do negócio no qual o 
banco de dados deve atuar. 
5 
Banco de Dados 
Minimundo hotel 7 
Colinas 
 Clientes podem fazer reservas por 
telefone, internet ou pessoalmente. Assim 
que chegam para se hospedar devemos 
confirmar o chekin do cliente e cadastrar o 
quarto como ocupado informando a 
provável data de desocupação, existem 3 
tipos de quartos diferentes, os clientes 
podem fazer pedidos a cozinha do hotel e 
comprar serviços de turismo na cidade 
direto na recepção , tudo será somado no 
momento do checkout do cliente. 
6 
Banco de Dados 
Modelagem de dados 
 Modelagem de dados é a maneira de 
organizar os dados, estruturando corretamente 
todos os objetos (tabelas, consultas, relatórios 
etc.) que serão utilizados, garantindo: 
 
• Extração correta das informações ; 
• Ganho de produtividade durante o desenvolvimento 
da aplicação ; 
• Consultas e relatórios executados mais rapidamente ; 
• Manutenção mais simples e de menor custo . 
 
7 
Banco de Dados 
Modelagem de dados 
 A modelagem é composta pelas seguintes 
etapas: 
• Definição da finalidade do banco de dados 
 Nesta etapa, deverão ser listadas todas as 
informações necessárias para a confecção do 
banco de dados. Todas as pessoas que utilizarão o 
banco de dados deverão ser consultadas. 
 É interessante reunir todos os formulários, 
planilhas e demais documentos que são utilizados 
atualmente para registrar as informações que serão 
obtidas através do banco de dados. 
8 
Banco de Dados 
Modelagem de dados 
• Definição das tabelas e respectivos campos 
 Para definir que tabelas deverão ser criadas, reúna 
todos os tipos de informações de que você necessitará e 
divida os itens em tópicos principais, como Clientes, Contas a 
Receber, Pedidos. Cada tópico torna-se uma tabela. 
 É importante esboçar a estrutura de cada tabela com 
os devidos campos, ainda que no papel. Dessa forma, 
poderão ser visualizadas informações em duplicidade, 
lembrando que as informações deverão constar de apenas 
uma tabela. 
 Por exemplo, a tabela Clientes pode incluir campos 
como nome, sobrenome, email, telefone de contato etc., 
informações essas que não precisam constar da planilha 
Pedidos. 
9 
Banco de Dados 
Modelagem de dados 
• Identificação dos campos de chave primária 
 Chamamos de chave primária um campo que 
contém um valor exclusivo e que servirá de ligação 
entre tabelas. 
 
• Identificação dos campos de chave 
estrangeira 
 Chamamos de chave estrangeira os campos 
da tabelas que identificam o relacionamento entre 
duas tabelas. A chave estrangeira faz referencia a 
chave primaria, tendo o mesmo valor e o mesmo 
tipo que ela. 
 
10 
Banco de Dados 
Modelagem de dados 
• Definição dos relacionamentos entre as 
tabelas 
 É importante observar cada uma das tabelas 
que se tiver em mãos para definir como os dados 
deverão relacionar-se entre elas. Por exemplo, as 
tabelas Clientes e Pedidos poderão ser 
relacionadas pelo campo chave CPF/CNPJ, pois 
seu conteúdo nunca será o mesmo para dois 
clientes. Dessa forma, temos a garantia de emitir 
uma nota fiscal (relatório) com os dados corretos, 
mesmo com cada campo pertencendo a uma das 
tabelas. 
11 
Banco de Dados 
Modelagem de dados 
• Revisão da estrutura das tabelas 
 
Após a criação das tabelas verificar se: 
 Há informações duplicadas (dados redundantes) que 
consomem espaço e aumentam a possibilidade de erro. 
 Há colunas desnecessárias. 
 Todos os itens de informações foram quebrados em 
partes úteis menores, por exemplo, uma coluna para 
Nome e outra para Sobrenome. 
 Os campos estão relacionados com a tabela. Quando 
um campo não contém informações sobre o tópico da 
tabela é porque pertence a uma tabela diferente. 
12 
Banco de Dados 
 Para construir um modelo de dados, usa-se uma 
linguagem de modelagem de dados. 
 
Podemos definir a modelagem em três modelos: 
 
• Modelo conceitual : representa as regras de negócio sem limitações 
tecnológicas ou de implementação por isto é a etapa mais adequada para o 
envolvimento do usuário que não precisa ter conhecimentos técnicos; 
 
• Modelo lógico: leva em conta limites impostos por algum tipo de 
tecnologia de banco de dados; 
 
• Modelo físico: leva em consideração limite impostos pelo SGBD e pelos 
requisitos não funcionais dos programas (MACORATTI, 2008). 
 
Modelagem de dados 
13 
Banco de Dados 
Modelo Conceitual 
 É uma descrição de banco de dados de 
forma independente de implementação num 
sistema de gerenciamento. 
 Este Modelo registra QUE dados podem 
aparecer no banco, mas não registra COMO 
estes dados estão armazenados no SGBD. 
 Ele não informa QUAIS dados estão 
armazenados, apenas que tipo de dado 
contém. 
14 
Banco de Dados 
 O modelo Conceitual pode ser representado em 
uma linguagem textual dos dados a serem utilizados. 
 
Exemplo de um modelo conceitual textual: 
 
Cadastro de Clientes 
 Dados necessários: nome completo, tipo de pessoa 
(física ou jurídica), endereço, bairro, cidade, estado, 
telefone e e-mail. 
 
Modelo Conceitual 
15 
Banco de Dados 
Modelo Entidade 
Relacionamento 
 A técnica de modelagem mais 
difundida é a abordagem entidade-
relacionamento (ER). Nesta técnica, um 
modelo conceitual é usualmente 
representado através de um diagrama, 
chamado diagrama entidade-
relacionamento (DER). 
 
 
16 
Banco de Dados 
Modelo Entidade 
Relacionamento 
Exemplo de um MER: 
 
 
 
 
17 
Banco de Dados 
Modelo Entidade- 
Relacionamento (MER) 
• Entidade – Objeto ou ente do mundo real que 
possui identidade própria o qual registramos 
as propriedades; 
• Conjunto de Entidades – Agrupamento de 
entidades similares com valores diferentes; 
• Atributos – Propriedades específicas das 
entidades; 
• Atributos Chave/Determinante – Projetado 
de forma única para identificar qualquer 
entidade do conjunto de entidades; 
18 
Banco de Dados 
Atributos 
 Atributos são os campos que 
caracterizam cada entidade (tabela). 
Exemplo: A tabela Pessoa tem Nome, 
Data de Nascimento, Telefone, RG, CPF, 
entre outros como atributos. 
19 
Banco de Dados 
Modelo Entidade-
Relacionamento(MER) 
 Exemplo: Funcionarios (num, RG, 
CPF, nome, endereco, salario) 
FUNCIONÁRIOS 
num RG CPF nome endereco salario 
20 
Banco de Dados 
Modelo Entidade-
Relacionamento(MER) 
Relacionamentos 
 Um relacionamento entre dois 
conjuntos de entidades é uma lista de 
pares onde cada par representauma 
associação de uma entidade de um CE 
(Conjunto de Entidades) com outra 
entidade de outro CE. 
21 
Banco de Dados 
Modelo Entidade-
Relacionamento(MER) 
Relacionamentos 
 Um funcionário está lotado somente em 
um departamento, e um departamento pode 
possui vários funcionários. 
FUNCIONÁRIOS DEPARTAMENTO LOTA 
Relacionamento um-para-muitos 
N 1 
22 
Banco de Dados 
Modelo Entidade-
Relacionamento(MER) 
Relacionamentos 
 Um funcionário gerencia somente um 
departamento, e um departamento é 
gerenciado somente por um funcionário. 
FUNCIONÁRIOS DEPARTAMENTO 
Relacionamento um-para-um 
GERENCIA 
1 1 
23 
Banco de Dados 
Modelo Entidade-
Relacionamento(MER) 
Relacionamentos 
 Um pode participar de vários projetos, e 
um projeto pode ter a participação de vários 
funcionários. 
FUNCIONÁRIOS PROJETOS 
Relacionamento muitos-para-muitos 
PARTICIPA 
N N 
24 
Banco de Dados 
Modelo Entidade-
Relacionamento(MER) 
Relacionamento Total 
 Um relacionamento total consiste em que 
todas as entidades de um CE devem fazer 
parte de um relacionamento com outro CE. 
FUNCIONÁRIOS DEPARTAMENTOS LOTA 
N 1 
A representação por totalidade em relação aos funcionários, ou 
seja, não pode existir nenhuma instância de funcionários sem que 
haja um relacionamento com pelo menos uma instância de 
departamentos. 
25 
Banco de Dados 
Modelo Entidade-
Relacionamento(MER) 
Relacionamento com Atributos 
 Um relacionamento com atributos pode ser 
utilizado para o caso de Materiais e 
Fornecedores. 
MATERIAIS FORNECEDORES FORNECE 
N N 
PRAZO PREÇO QUANTIDADE 
26 
Banco de Dados 
Auto-Relacionamento 
FUNCIONARIO 
GERENCIA 
1 N 
Modelo Entidade-
Relacionamento(MER) 
27 
Banco de Dados 
Relacionamento Triplo 
• Dado um professor e uma disciplina, temos diversos alunos. 
• Dado um professor e um aluno, temos diversas disciplinas. 
• Dado um aluno e uma disciplina, temos um professor. 
Professores Tem Alunos 
Disciplinas 
1 N 
N 
Modelo Entidade-
Relacionamento(MER) 
28 
Banco de Dados 
Cardinalidade 
 A Cardinalidade indica quantas 
ocorrências de uma Entidade 
participam no mínimo e no máxima do 
relacionamento. 
Modelo Entidade-
Relacionamento(MER) 
29 
Banco de Dados 
Cardinalidade (Grau Mínimo e Máximo) 
Modelo Entidade-
Relacionamento(MER) 
30 
Banco de Dados 
Especialização 
 Caracteriza propriedades específicas de 
uma entidade genérica. 
Cliente 
Pessoa_Juridica Pessoa_Fisica 
Modelo Entidade-
Relacionamento(MER) 
31 
Banco de Dados 
Entidade Associativa 
 Resulta da associação entre entidades. 
Modelo Entidade-
Relacionamento(MER) 
32 
Banco de Dados 
BrModelo 
 O BrModelo é uma ferramenta que facilita 
a construção do Modelo ER. 
Representação Gráfica 
33 
Banco de Dados 
Modelo Lógico 
 Compreende uma descrição das 
estruturas que serão armazenadas no 
banco e que resulta numa 
representação gráfica dos dados de 
uma maneira lógica, inclusive 
nomeando os componentes e ações 
que exercem uns sobre os outros. 
34 
Banco de Dados 
Modelo Lógico 
• Deriva do modelo conceitual. 
• Possui entidades associativas em lugar 
de relacionamentos n:m. 
• Define as chaves primárias das 
entidades. 
• Define as chaves estrangeiras das 
entidades. 
• Entidades viram tabelas. 
• Atributos viram campos das tabelas. 
 
35 
Banco de Dados 
Modelo Conceitual 
• Exemplo MER: 
36 
Banco de Dados 
Modelo Lógico 
• Exemplo Modelo Lógico: 
37 
Banco de Dados 
Modelo Físico 
• É uma descrição de um banco de dados no nível de 
abstração visto pelo usuário do SGBD. Assim, esse 
modelo depende do SGBD que está sendo usado, e dos 
meios físico onde serão implantados. 
 
• Aqui são detalhados os componentes da estrutura do 
banco, como tabelas, campos, tipos de valores, índices, 
etc. 
 
• Nesse estágio estamos prontos para criar o banco de 
dados propriamente dito, usando o SGBD preferido, em 
um ambiente adequado. 
38 
Banco de Dados 
Modelo Físico 
 Muitas vezes o modelo físico pode ser 
representado como mostra abaixo, através de 
tabelas em um BD Relacional: 
 
Tipo de Produto 
 
 
 
 Produto 
39 
Banco de Dados 
Modelo Físico 
 Podendo também haver um 
detalhamento de uma tabela: 
 
 
Cadastro de paciente 
40 
Banco de Dados 
Modelo Físico 
 Mas é neste modelo onde podemos já criar o banco 
de dados propriamente dito, usando o SGBD mais 
adequado. 
 
Exemplo: 
CREATE DATABASE ESCOLA; 
 
CREATE TABLE aluno( 
 matricula INTEGER NOT NULL, 
 nome VARCHAR(40), 
 sexo VARCHAR(1) 
); 
41 
Banco de Dados 
Conclusão 
 Para construirmos um BD, precisamos 
passar por varias etapas, para garantirmos que 
ele esteja bem estruturado. 
42 
Banco de Dados 
Hora de praticar 
 Pensando em nosso projeto da Biblioteca, 
contrua: 
1. Um minimundo. 
2. Descreva um modelo conceitual textual. 
3. O Modelo Entidade Relacionamento. 
4. Através do MER já construído por você, descreva no 
caderno o modelo lógico. 
 
Obs: A atividade pode ser feita em dupla ou individual. 
Caso não seja possivel concluir ate o final da aula, pode 
ser entregue na próxima aula. Esta atividade valerá 
como 1 das Notas para compor a N1. 
43 
Banco de Dados 
Dúvidas? 
profguibsonsantana@gmail.com 
44 
Banco de Dados 
EXTRA 
 O projeto de um banco de dados envolve a produção de 
3 modelos que definem uma arquitetura de 3 esquemas 
(conceitual, lógico e físico). 
 Na fase inicial do processo, o mundo real (ou mini 
mundo) deve ser entendido e seus objetos conceituais 
identificados. 
 A este entendimento e identificação chamamos 
abstração de dados e o modelo produzido após esta fase 
chamamos modelo conceitual. 
 Após a sua confecção e pela a aplicação de regras 
específicas, um modelo lógico é produzido. Este modelo está 
vinculado ao modelo de dados adotado pelo SGBD. 
 Na etapa final, o modelo lógico dá origem ao modelo 
físico, efetivamente armazenado no banco de dados. 
 
45 
Banco de Dados 
EXTRA 
 Para compreendermos melhor o modelo conceitual, 
vamos ver como ficaria uma possibilidade de elaboração 
do minimundo do Hotel 7 Colinas, já estudado 
anteriormente: 
 
Realizar_Reserva: tipo_de_quarto, dia_entrada, 
forma_pagamento, qtd_de_pessoas. 
Cadastro_Cliente: nome, cpf, rg, data_nascimento. 
Endereco: rua, cep, cidade, bairro, numero, país. 
Checkin: quarto. 
Checkout: horario_entrada, horario_de_saida, 
valor_total_gasto. 
Cadastro_Pedidos: itens_cozinha, valor_itens_cozinha, 
servico_turismo, valor_servico_turismo. 
 
46

Continue navegando