AULA 11-12. Entidade-Relacionamento



Documentos relacionados
Banco de Dados Modelo Conceitual, Lógico, Físico, Entidade- Relacionamento (ER) Hélder Nunes

Projeto de Banco de Dados. Disciplina: Banco de Dados I José Antônio da Cunha

Processo de desenvolvimento de sistema de informação - DSI

Introdução e conceitos. Capítulo 1

Dados. Qualquer elemento (aspecto, fato, medida etc.) representativo, disponível e coletável na realidade. fatos no estado bruto, conforme Platão;

Introdução e conceitos. Capítulo 1

ENGENHARIA DA COMPUTAÇÃO

Banco de Dados Aula 02. Colégio Estadual Padre Carmelo Perrone Profº: Willian

BANCO DE DADOS I AULA 3. Willamys Araújo

Disciplina: Unidade III: Prof.: Período:

MC536 Bancos de Dados: Teoria e Prática

Disciplina de Banco de Dados Parte V

Roteiro 3 Modelagem relacional

Banco de Dados I. Prof. Bal. Emerson Meneses Inocente

MODELAGEM DE DADOS. Unidade II Arquiteturas do SGBD

MODELAGEM DE DADOS. Banco de Dados I. O uso da análise e do projeto Orientados a Objetos atenuou a separação! Unidade I

Curso de Gestão em SI MODELAGEM DE DADOS. Rodrigo da Silva Gomes. (Extraído do material do prof. Ronaldo Melo - UFSC)

Conjunto de objetos da realidade modelada sobre os quais deseja-se. dados.

Banco de Dados - Senado

MER Modelo de entidade e Relacionamento. Prof. Me. Hélio Esperidião

BANCO DE DADOS I. Prof. Antonio Miguel Faustini Zarth

Modelo Entidade-Relacionamento

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER )

Ciclo de Desenvolvimento de Sistemas de BD

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho

Oficina. Praça das Três Caixas d Água Porto Velho - RO

Modelo de Entidade e Relacionamento (MER) - Parte 07

MODELO ENTIDADE - RELACIONAMENTO

Capítulo 22. Associações entre Classes. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Descreve relacionamentos entre objetos de dados; conduz à modelagem de dados; atributos de cada objeto => Descrição de Objetos de Dados;

Aula II Introdução ao Modelo de Entidade-Relacionamento

Disciplina: Unidade II: Prof.: Período:

Persistência e Banco de Dados em Jogos Digitais

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

1) O QUE NÃO É BANCO DE DADOS?

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

Nome Número: Série. Relacionamentos

Unidade II ADMINISTRAÇÃO DE. Prof. Luiz Fernando de Lima Santos

Microsoft Access XP Módulo Um

Capítulo 5 Complemento. 5.1 Laudon, Cap. 5

Banco de Dados I. Projeto de Banco de Dados e o Modelo E-R. Fabricio Breve

Introdução a Banco de Dados e Access

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

O Modelo de Entidades e Relacionamentos (MER) é um modelo conceitual usado para projeto de aplicações de banco de dados.

Introdução a Banco de Dados e Access

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Administração de Bancos de Dados

Modelagem dos dados. entendo. Reino Real. Reino. Representação

OURO MODERNO APOSTILA DE EXEMPLO (Esta é só uma reprodução parcial do conteúdo)

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br. Aula 3. Prof. Rafael Dias Ribeiro.

www. inf.br Outubro/2008 5www.habisp.inf.br TREINAMENTO HABISP VERBA DE ATENDIMENTO

Roteiro. Modelagem de Dados: Usando o Modelo Entidade-Relacionamento. BCC321 - Banco de Dados I. Processo de Projeto de Banco de Dados.

Aula 3 SBD Modelo Entidade Relacionamento Parte 1. Profa. Elaine Faria UFU

Especificação do 3º Trabalho

Métodos de Construção de Software: Análise Estruturada

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr waltenomartins@yahoo.

UD 4: Sistema de Gerenciamento de Banco de Dados

ADMINISTRADOR DE BANCO DE DADOS

Curso Superior de Tecnologia em BD

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr

Propriedades de entidades

Banco de Dados 1 2º Semestre

Banco de Dados I. Projeto de Banco de Dados e o Modelo E-R Parte 2. Fabricio Breve

INF1383 -Bancos de Dados

SISTEMAS DE INFORMAÇÃO GERENCIAIS

Prof. Marcelo Machado Cunha

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

Prof.: Clayton Maciel Costa

INF Fundamentos de Banco de Dados Exercícios sobre normalização

Técnicas e Linguagens para Banco de Dados I

Lista de exercícios 01

ProgramaTchê Programação OO com PHP

Profa. Daniela Barreiro Claro

Banco de Dados I. Introdução. Fabricio Breve

LINGUAGEM DE BANCO DE DADOS

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Modelagem de dados e uso do SGBD MySQL

Criando, inserindo e exibindo PHP+MySql

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

CURSO DE INFORMÁTICA BÁSICA AULA 2 O AMBIENTE WINDOWS

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

Modelo Entidade-Relacionamento. Modelo Entidade-Relacionamento. Modelo Entidade-Relacionamento

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados

Como funciona? SUMÁRIO

Tutorial Sistema de Eventos de Certificação e Capacitação

Orientação a Objetos

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

Conjunto de conceitos que podem ser usados para descrever a estrutura de um banco de dados

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Introdução Banco de Dados

I Requisitos de um modelo conceitual: - clareza (facilidade de compreensão) - exatidão (formal)

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

Simulado Banco de Dados I Bimestre 1 Capítulo 1 Projeto Lógico de Banco de Dados

PROGRAMANDO EM C# ORIENTADO A OBJETOS

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD

Projeto de Banco de Dados

TUTORIAL DO ACCESS PASSO A PASSO. I. Criar um Novo Banco de Dados. Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo

Transcrição:

AULA 11-12 Modelo Conceitual, Lógico e Físico, Entidade-Relacionamento Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes abrahao.lopes@ifrn.edu.br

Modelos de banco de dados Modelo de banco de dados é uma descrição dos tipos de informações que estão armazenadas em um banco de dados. Por exemplo, pode informar que o banco armazena informações sobre produtos e que, para cada produto, são armazenados seu código, preço e descrição. O modelo não informa QUAIS produtos estão armazenados, apenas que tipo de informações contém.

Modelos de banco de dados Para construir um modelo de dados, usa-se uma linguagem de modelagem de dados. Existem linguagens textuais e linguagens gráficas. É possível descrever os modelos em diferentes níveis de abstração e com diferentes objetivos. Cada descrição recebe o nome de esquema de banco de dados.

Modelo Conceitual É uma descrição de banco de dados de forma independente de implementação num sistema de gerenciamento. Registra QUE dados podem aparecer no banco, mas Registra QUE dados podem aparecer no banco, mas não registra COMO estes dados estão armazenados no SGBD.

Modelo Conceitual Exemplo de um modelo conceitual textual: 1) Cadastro de Clientes Dados necessários: nome completo, tipo de pessoa (física ou jurídida), endereço, bairro, cidade, estado, telefone, email, nome de contato. 2) Pedido Dados necessários: código do produto, quantidade, código do cliente, código do vendedor.

Exercício Descreva um modelo conceitual para armazenar os dados de livros. Resposta (provável): Cadastro de Livros: Titulo, subtítulo, autor, editora, número de páginas, preço de compra, já foi lido, ISBN, número de páginas, ano de publicação, número da edição...

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.

Modelo Lógico Exemplo de um modelo lógico preço descrição Produto É do Tipo Tipo de produto descrição código código

Modelo Lógico O modelo lógico também pode ser representado assim: TipoDeProduto (CodTipoProd, DescrTipoProd) Produto (CodProd, DescrProd, PrecoProd, CodTipoProd) CodTipoProd referencia TipoDeProduto

Modelo Lógico 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). Por enquanto iremos estudar apenas o modelo relacional, no qual os dados estão organizados em forma de tabelas.

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. Aqui são detalhados os componentes da estrutura física 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.

Modelo Físico Exemplo de tabelas em um BD Relacional. Tipo de produto Código Descrição 1 Computador 2 Impressora Produto Código Descrição Preço CódigoDoTipo 10 Desktop 1.200,00 1 20 Laptop 1.800,00 1 30 Impr. Jato Tinta 300,00 2 40 Impr. Laser 500,00 2

Modelo Físico Detalhamento de uma tabela Cadastro de Paciente Nome do campo Tipo de Dado Tamanho do campo Código do Paciente Numérico 5 dígitos Nome do Paciente Alfanumérico 50 caracteres Endereço Alfanumérico 50 caracteres Bairro Alfanumérico 40 caracteres Cidade Alfanumérico 40 caracteres Estado Alfanumérico 2 caracteres CEP Alfanumérico 9 caracteres Data de Nascimento Data 10 caracteres

Modelo Entidade-Relacionamento Entidade é um objeto ou evento do mundo real sobre o qual desejamos manter um registro. Ex.: Aluno, Carro, Produto, Vendedor, etc.

Modelo Entidade-Relacionamento Atributo é uma propriedade ou característica que descreve uma entidade. Também é chamado de campo. Ex.: Atributos da entidade ALUNO: nome, data de nascimento, telefone, endereço, etc. João Silva Homem 28 anos Vendedor Pedro Santos Homem 53 anos Professor

Modelo Entidade-Relacionamento Atributo 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.: Matrícula, CPF, código, Renavam, Chassi... Diferenciamos um atributo chave dos demais atributos colocando um * (asterisco) antes do nome do atributo ou sublinhando este.

Modelo Entidade-Relacionamento Representamos uma entidade nos diagramas E-R através de um retângulo. preço Produto ou Produto *código descrição preço descrição código

Relacionamentos No mundo real as entidades nunca estão sozinhas; normalmente estão associadas entre si. Reconhecer e registrar as associações entre entidades fornece uma descrição muito mais rica do ambiente.

Relacionamentos Relacionamento é uma relação entre uma, duas ou várias entidades. Geralmente associamos através da ação (verbo) entre as entidades. Ex.: Pai possui Filho Cliente realiza Pedido Vendedor vende Produto

Grau do Relacionamento Grau do relacionamento é a quantidade de entidades que estão ligadas ao relacionamento. Relacionamento unário (grau 1) uma entidade se relaciona com ela mesma. Funcionário Gerencia Pessoa Casamento

Grau do Relacionamento Relacionamento binário (grau 2) é um relacionamento que liga dois tipos diferentes de entidades. É o mais comum dos tipos de relacionamentos. Vendedor Vende Produto Aluno Cursa Disciplina

Grau do Relacionamento Relacionamento ternário (grau 3) é um relacionamento em que três entidades estão interligadas por um mesmo relacionamento. Cliente Pedido Vendedor Tipo de Pagamento

Grau do Relacionamento Outros graus de relacionamentos também podem ser usados (quaternário, grau 5, etc...).

Cardinalidade Cardinalidade (máxima) define a quantidade de ocorrências de uma entidade que poderá estar associada a outra entidade. Ex.: Um vendedor pode vender apenas um tipo de produto? Ou dois? Ou três? Um produto pode ser vendido por apenas um vendedor, ou por todos?

Cardinalidade Relacionamento binário Um-para-Um (1:1) - Indica que uma ocorrência da entidade A pode se relacionar exclusivamente com uma ocorrência da entidade B e vice versa. Ex.: Um vendedor ocupa um único escritório e um escritório pode ser ocupado por um único vendedor.

Cardinalidade Relacionamento binário Um-para-Muitos (1:n) uma ocorrência da entidade A pode se relacionar com várias ocorrências da entidade B, porém o inverso não é permitido. Ex. Um vendedor atende muitos clientes. Porém, cada cliente tem um vendedor específico. 1 n

Cardinalidade Rel. binário Muitos-para-Muitos (n:m) uma ocorrência da entidade A pode se relacionar com muitas ocorrências da unidade B e vice versa. Ex.: Um vendedor atende muitos clientes, e um Ex.: Um vendedor atende muitos clientes, e um cliente pode ser atendido por diversos vendedores.

Cardinalidade Na prática, o relacionamento n:m é dividido em duas relações 1:n e uma nova entidade é criada para representar o relacionamento. n n

Cardinalidade Cardinalidade (mínima) define o número mínimo de ocorrências de entidade que precisam estar associadas a outra entidade (em caráter obrigatório). Só consideramos duas cardinalidades mínimas: 0 e 1. Escreve-se: 0..1 1..1 0..n 1..n 0..* 1..* etc...

Cardinalidade Ex.: Um vendedor ocupa um único escritório, porém é obrigatório que ele tenha um escritório. (Lê-se no mínimo Um, no máximo Um). Um escritório pode ser ocupado por um único vendedor, porém pode ser que a sala esteja vazia, ainda sem vendedor. (Lê-se no minimo Zero, no máximo Um). 0..1 1..1

Formas de representação Existe uma variedade enorme de representações gráficas para o modelo entidade relacionamento. CLÁSSICO PÉ DE GALINHA

Formas de representação COLUNAS CONECTADAS UML E diversas outras. Escolha a forma que preferir.

MySQL Workbench Ferramenta gratuita para modelagem e manipulação de bancos de dados MySQL (e compatíveis).

MySQL Workbench Usaremos a ferramenta de modelagem ER para criar nosso primeiro projeto. Duplo clique em Add Diagram para abrir a tela de edição de diagramas. As setas na cor cinza abrem ou fecham outras opções que não usaremos por enquanto.

MySQL Workbench O ambiente de modelagem de diagramas.

MySQL Workbench As ferramentas SELEÇÃO INSERIR CAMADA / ÁREA MOVER TELA INSERIR NOTA DE TEXTO APAGAR INSERIR IMAGEM

MySQL Workbench As ferramentas NOVA TABELA REL. 1:1 SEM IDENTIFICAÇÃO REL 1:N SEM IDENTIFICAÇÃO NOVA VISÃO REL 1:1 IDENTIFICADO GRUPO DE ROTINAS REL 1:N IDENTIFICADO REL N:M IDENTIFICADO REL USANDO COLS. EXISTENTES

MySQL Workbench As ferramentas Novo, Abrir, Salvar, Salvar Como, Desfazer, Refazer, Exibir grade, Encaixar na grade

MySQL Workbench As ferramentas Busca de objetos (texto), abrir console, ocultar barra lateral Visualização/ navegação (mova o quadro) Zoom

Exercícios Crie o modelo conceitual para um sistema de biblioteca com as seguintes entidades: Usuário, Livro, Autor, Editora. Crie um modelo lógico para os dados da questão Crie um modelo lógico para os dados da questão anterior. Usando o MySQL Workbench.

Referências ALVES, W. P. Fundamentos de Bancos de Dados. Érica, 2004 GILLENSON, Mark L. Fundamentos de Sistemas de Gerência 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.