Profº Aldo Rocha Banco de Dados
AULA 03: MODELO CONCEITUAL E DE ENTIDADES Turma: ASN102 BELÉM, 19 DE AGOSTO DE 2011
Aula Passada Na aula passada nós trabalhamos a introdução a Banco de dados e a AGENDA FOI: * COMPONENTES DO SBD; * REDUNDÂNCIA; * COMPARTILHAMENTO DE DADOS; * TIPOS DE DADOS: PERSISTENTES, OPERACIONAIS E INFORMACIONAIS; * CONCEITO DE OLTP E OLAP; * BANCO DE DADOS RELACIONAL; * INTRODUÇÃO A MODELO DE DADOS;
Aula Passada Qual o objetivo do modelo conceitual? O modelo conceitual concentra-se no mais alto nível de abstração e não leva em conta o banco de dados em si, mas a forma como as estruturas serão criadas para armazenar os dados.
Conjunto de Entidades Uma entidade: Trata-se de uma abstração de um ente existente no mundo real, ou seja, pode ser um abstração de um ser, de um fato, de uma coisa ou de um organismo social. No MER um conjunto de entidades é representado por um retângulo. A nomenclatura dessas entidades devem ser escritas com a inicial em letra maiúscula e devem ser substantivo para demonstrar entidades do mundo real. 4/36
Conjunto de Entidades Desenho de entidade: Livros Fornecedore s Prateleiras Cada retângulo representa um grupo do mundo real, portanto, o retângulo denominado livro, representa todos os livros cujo os dados são armazenados no sistema. 4/36
Regras de projeto Nome dos conjuntos entidades devem estar no plural; Para evitar redundância no projeto devemos impor que cada ente do mundo real seja representado por uma única entidade de um único conjunto de entidades; Independência de dados, cada dado deve estar representado uma única vez, para que não haja outras ocorrências do mesmo. 5/36
Atributos de Entidades A representação de um objeto do mundo real como entidade em um modelo entidade relacionamento, não é de grande valia se não vir em conjunto com informações relacionadas a esta entidade que são denominados atributos. Pessoa Nome Telefone Endereço Os atributos são qualificações da entidade pessoa. Pessoa Nome Endereç o Sexo 6/36
Atributos de Entidades Não deve-se concluir que uma pessoa possui atributos simples assim, o correto é fazer a leitura de que cada entidade do conjunto pessoa, possui os atributos especificados no modelo. Os atributos também iniciam com letras maiúsculas. Porém o nome do atributo deve estar sempre no singular, indicando que cada entidade do conjunto possui uma ocorrência do atributo. Pessoa Nome Endereç o Sexo 6/36
Atributos de Entidades Lembrem-se, baseado no que foi definido por Chen, um atributo só poderá assumir um único valor elementar. Exemplo: Sexo tem apenas um valor para cada entidade, não é possível criar sub valores a partir deste atributo. Pessoa Nome Endereç o Sexo 6/36
Atributo Compostos Um atributo composto é aquele que pode ser decomposto em outros atributos, é aquele que abarca consigo várias informações: Exemplo: representado por uma árvore de atributos após o atributo pai. Desenho: 7/36
Atributo Multivalorados Não confundir atributo Multivalorado com atributo composto. O multivalorado é aquele que permite que uma entidade receba múltiplos valores de um determinado atributo que é do tipo multivalorado. Um exemplo disso seria em uma aplicação de biblioteca onde o atributo Atores em uma entidade livro, poderá receber vários registros. Desenho: representado pelo asterisco na frente do atributo 7/36
Atributos com valores vazios Trata-se da possibilidade de uma entidade em um conjunto não necessariamente receber valor um valor para aquele atributo, onde o usuário simplesmente não define qualquer instância para aquele atributo. Em muitas aplicações percebemos que há campos os quais não são necessário preenchimento ou que se quer existe. Exemplo: Turista do exterior. (ˆ) 8/36
Atributos determinantes Uma restrição de integridade muito importante São os chamados atributos determinantes, pois, trata-se de um atributo monovalorado o qual define a unicidade daquela instância. Logo, não haverá outra entidade com aquele mesmo atributo. Um bom exemplo seria um sistema de protocolo onde o número gerado pela aplicação é um atributo determinante. Conclui-se que não haverá nenhum número de protocolo repetido. Representação: ( bolinha preta). 9/36
Relacionamentos Trata-se de uma associação entre entidades O relacionamento é a forma de demonstrar a interação entre entidades. Para demonstrar que a entidade pessoa, interagiu com a entidade livro, precisamos de mais um elemento no modelo entidade relacionamento, o qual chamados de relacionamento, onde devemos escrever uma denominação para demonstrar que ali está a ação de que livros foram emprestados.
Relacionamentos É interessante representar através de sinônimos e substantivos relacionados com as entidades para que possamos criar um cenário da determinada ação, ou seja, devemos utilizar sinônimos derivados das consultas que exemplificamos. Desenho:
Multiplicidade de relacionamentos Tipos: um para um: O relacionamento um-para-um é usado quando uma entidade A se relaciona de forma exclusica com com uma entidade B e vice-versa. Este relacionamento é representado pelo sinal: 1:1
Multiplicidade de relacionamentos um para muitos: O relacionamento um-para-muitos é usado quando uma entidade A pode se relacionar com uma ou mais entidades B. Este relacionamento é representado pelo sinal: 1:N
Multiplicidade de relacionamentos muitos para muitos: O relacionamento muitos-para-muitos é usado quando várias entidades A se relacionam com várias entidades B. Este relacionamento é representado pelo sinal: N:N ou N:M
Cardinalidades A cardinalidade é um conceito importante para ajudar a definir o relacionamento, ela define o número de ocorrências em um relacionamento. Para determinar a cardinalidade, deve-se fazer a pergunta relativa ao relacionamento em ambas as direções. Um departamento possui quantos empregados? no mínimo 1 e no máximo N. Um empregado está alocado em quantos departamentos? no mínimo em 1 e no máximo em 1
Cardinalidades Faça a modelagem de dados (aplique o modelo conceitual apenas), de uma empresa que ministra cursos de TI onde devemos ter: controle de alunos, com todas as informações detalhadas. Controle de professores com todas as informações detalhadas. Controle de turmas com todas as informações detalhadas. Controle de cursos com todas as informações detalhadas. Controle de módulos dos cursos com todas as informações detalhadas e Controle de inscrições com todas as informações detalhadas e Controle de formas de pagamento com todas as informações detalhadas.