08 modelo conceitual fisico logico er
Post on 19-Jul-2015
477 Views
Preview:
TRANSCRIPT
AULA 11-12 Modelo Conceitual, Lgico e Fsico, Entidade-RelacionamentoCurso: Tcnico em Informtica (Integrado) Disciplina: Banco de Dados Prof. Abraho Lopes abrahao.lopes@ifrn.edu.br
Modelos de banco de dadosModelo de banco de dados uma descrio dos tipos de informaes que esto armazenadas em um banco de dados. Por exemplo, pode informar que o banco armazena informaes sobre produtos e que, para cada produto, so armazenados seu cdigo, preo e descrio. O modelo no informa QUAIS produtos esto armazenados, apenas que tipo de informaes contm.
Modelos de banco de dadosPara construir um modelo de dados, usa-se uma linguagem de modelagem de dados. Existem linguagens textuais e linguagens grficas. possvel descrever os modelos em diferentes nveis de abstrao e com diferentes objetivos. Cada descrio recebe o nome de esquema de banco de dados.
Modelo Conceitual uma descrio de banco de dados de forma independente de implementao num sistema de gerenciamento. Registra QUE dados podem aparecer no banco, mas no registra COMO estes dados esto armazenados no SGBD.
Modelo ConceitualExemplo de um modelo conceitual textual:1) Cadastro de Clientes Dados necessrios: nome completo, tipo de pessoa (fsica ou jurdida), endereo, bairro, cidade, estado, telefone, email, nome de contato. 2) Pedido Dados necessrios: cdigo do produto, quantidade, cdigo do cliente, cdigo do vendedor.
ExerccioDescreva um modelo conceitual para armazenar os dados de livros. Resposta (provvel): Cadastro de Livros: Titulo, subttulo, autor, editora, nmero de pginas, preo de compra, j foi lido, ISBN, nmero de pginas, ano de publicao, nmero da edio...
Modelo LgicoCompreende uma descrio das estruturas que sero armazenadas no banco e que resulta numa representao grfica dos dados de uma maneira lgica, inclusive nomeando os componentes e aes que exercem uns sobre os outros.
Modelo LgicoExemplo de um modelo lgicodescrio
preo
Produto
do Tipo
Tipo de produto
descrio cdigo
cdigo
Modelo LgicoO modelo lgico tambm pode ser representado assim:TipoDeProduto (CodTipoProd, DescrTipoProd) Produto (CodProd, DescrProd, PrecoProd, CodTipoProd) CodTipoProd referencia TipoDeProduto
Modelo LgicoA tcnica de modelagem mais difundida a abordagem entidade-relacionamento (ER). Nesta tcnica, um modelo conceitual usualmente representado atravs de um diagrama, chamado diagrama entidade-relacionamento (DER). Por enquanto iremos estudar apenas o modelo relacional, no qual os dados esto organizados em forma de tabelas.
Modelo Fsico uma descrio de um banco de dados no nvel de abstrao visto pelo usurio do SGBD. Assim, esse modelo depende do SGBD que est sendo usado. Aqui so detalhados os componentes da estrutura fsica do banco, como tabelas, campos, tipos de valores, ndices, etc. Nesse estgio estamos prontos para criar o banco de dados propriamente dito, usando o SGBD preferido.
Modelo FsicoExemplo de tabelas em um BD Relacional.Tipo de produto Cdigo 1 2 Descrio Computador Impressora Produto Cdigo Descrio 10 20 30 40 Desktop Laptop Impr. Jato Tinta Impr. Laser Preo 1.200,00 1.800,00 300,00 500,00 CdigoDoTipo 1 1 2 2
Modelo FsicoDetalhamento de uma tabelaCadastro de Paciente Nome do campo Cdigo do Paciente Nome do Paciente Endereo Bairro Cidade Estado CEP Data de Nascimento Tipo de Dado Numrico Alfanumrico Alfanumrico Alfanumrico Alfanumrico Alfanumrico Alfanumrico Data Tamanho do campo 5 dgitos 50 caracteres 50 caracteres 40 caracteres 40 caracteres 2 caracteres 9 caracteres 10 caracteres
Modelo Entidade-RelacionamentoEntidade um objeto ou evento do mundo real sobre o qual desejamos manter um registro. Ex.: Aluno, Carro, Produto, Vendedor, etc.
Modelo Entidade-RelacionamentoAtributo uma propriedade ou caracterstica que descreve uma entidade. Tambm chamado de campo. Ex.: Atributos da entidade ALUNO: nome, data de nascimento, telefone, endereo, etc.
Joo Silva Homem 28 anos Vendedor
Pedro Santos Homem 53 anos Professor
Modelo Entidade-RelacionamentoAtributo Chave um atributo que deve possuir um valor nico em todo o conjunto de entidades. Este atributo usado para identificar unicamente um registro da tabela. Ex.: Matrcula, CPF, cdigo, Renavam, Chassi... Diferenciamos um atributo chave dos demais atributos colocando um * (asterisco) antes do nome do atributo ou sublinhando este.
Modelo Entidade-RelacionamentoRepresentamos uma entidade nos diagramas E-R atravs de um retngulo.preo Produto
ouProduto
*cdigo descrio preo
descrio cdigo
RelacionamentosNo mundo real as entidades nunca esto sozinhas; normalmente esto associadas entre si. Reconhecer e registrar as associaes entre entidades fornece uma descrio muito mais rica do ambiente.
RelacionamentosRelacionamento uma relao entre uma, duas ou vrias entidades. Geralmente associamos atravs da ao (verbo) entre as entidades. Ex.: Pai possui Filho Cliente realiza Pedido Vendedor vende Produto
Grau do RelacionamentoGrau do relacionamento a quantidade de entidades que esto ligadas ao relacionamento. Relacionamento unrio (grau 1) uma entidade se relaciona com ela mesma.
Funcionrio
Gerencia
Pessoa
Casamento
Grau do RelacionamentoRelacionamento binrio (grau 2) um relacionamento que liga dois tipos diferentes de entidades. o mais comum dos tipos de relacionamentos.VendedorVende
Produto
Aluno
Cursa
Disciplina
Grau do RelacionamentoRelacionamento ternrio (grau 3) um relacionamento em que trs entidades esto interligadas por um mesmo relacionamento.
Cliente
Pedido
Vendedor
Tipo de Pagamento
Grau do RelacionamentoOutros graus de relacionamentos tambm podem ser usados (quaternrio, grau 5, etc...).
CardinalidadeCardinalidade (mxima) define a quantidade de ocorrncias de uma entidade que poder estar associada a outra entidade. Ex.: Um vendedor pode vender apenas um tipo de produto? Ou dois? Ou trs? Um produto pode ser vendido por apenas um vendedor, ou por todos?
CardinalidadeRelacionamento binrio Um-para-Um (1:1) Indica que uma ocorrncia da entidade A pode se relacionar exclusivamente com uma ocorrncia da entidade B e vice versa. Ex.: Um vendedor ocupa um nico escritrio e um escritrio pode ser ocupado por um nico vendedor.
CardinalidadeRelacionamento binrio Um-para-Muitos (1:n) uma ocorrncia da entidade A pode se relacionar com vrias ocorrncias da entidade B, porm o inverso no permitido. Ex. Um vendedor atende muitos clientes. Porm, cada cliente tem um vendedor especfico.1 n
CardinalidadeRel. binrio Muitos-para-Muitos (n:m) uma ocorrncia da entidade A pode se relacionar com muitas ocorrncias da unidade B e vice versa. Ex.: Um vendedor atende muitos clientes, e um cliente pode ser atendido por diversos vendedores.
CardinalidadeNa prtica, o relacionamento n:m dividido em duas relaes 1:n e uma nova entidade criada para representar o relacionamento.
n
n
CardinalidadeCardinalidade (mnima) define o nmero mnimo de ocorrncias de entidade que precisam estar associadas a outra entidade (em carter obrigatrio). S consideramos duas cardinalidades mnimas: 0 e 1. Escreve-se: 0..1 1..1 0..n 1..n 0..* 1..* etc...
CardinalidadeEx.: Um vendedor ocupa um nico escritrio, porm obrigatrio que ele tenha um escritrio. (L-se no mnimo Um, no mximo Um). Um escritrio pode ser ocupado por um nico vendedor, porm pode ser que a sala esteja vazia, ainda sem vendedor. (L-se no minimo Zero, no mximo Um).
0..1
1..1
Formas de representaoExiste uma variedade enorme de representaes grficas para o modelo entidade relacionamento.CLSSICO
P DE GALINHA
Formas de representaoCOLUNAS CONECTADAS
UML
E diversas outras. Escolha a forma que preferir.
MySQL WorkbenchFerramenta gratuita para modelagem e manipulao de bancos de dados MySQL (e compatveis).
MySQL WorkbenchUsaremos a ferramenta de modelagem ER para criar nosso primeiro projeto. Duplo clique em Add Diagram para abrir a tela de edio de diagramas. As setas na cor cinza abrem ou fecham outras opes que no usaremos por enquanto.
MySQL WorkbenchO ambiente de modelagem de diagramas.
MySQL WorkbenchAs ferramentasSELEO INSERIR CAMADA / REA
MOVER TELA
INSERIR NOTA DE TEXTO
APAGAR
INSERIR IMAGEM
MySQL WorkbenchAs ferramentasREL. 1:1 SEM IDENTIFICAO NOVA TABELA REL 1:N SEM IDENTIFICAO REL 1:1 IDENTIFICADO
NOVA VISO
REL 1:N IDENTIFICADO GRUPO DE ROTINAS REL N:M IDENTIFICADO
REL USANDO COLS. EXISTENTES
MySQL WorkbenchAs ferramentas
Novo, Abrir, Salvar, Salvar Como, Desfazer, Refazer,
Exibir grade, Encaixar na grade
MySQL WorkbenchAs ferramentas Busca de objetos (texto), abrir console, ocultar barra lateral Visualizao/ navegao (mova o quadro)
Zoom
ExercciosCrie o modelo conceitual para um sistema de biblioteca com as seguintes entidades: Usurio, Livro, Autor, Editora. Crie um modelo lgico para os dados da questo anterior. Usando o MySQL Workbench.
RefernciasALVES, W. P. Fundamentos de Bancos de Dados. rica, 2004 GILLENSON, Mark L. Fundamentos de Sistemas de Gerncia de Banco de Dados. LTC, 2006. HEUSER, Carlos Alberto. Projeto de Banco de Dados. Sagra Luzzatto, 2004. TEOREY, Toby J. Projeto e modelagem de banco de dados. Elsevier, 2007.
top related