Modelagem Relacional Daniela Barreiro Claro DCC/IM/UFBA Modelagem Relacional 2 Modelar é criar representações do mundo real A modelagem relacional pode ser representada via MER (Modelo de Entidade Relacionamento) O MER define estruturas e restrições e utiliza uma notação denominada Diagramas ER Prof. Daniela Barreiro Claro Modelagem Relacional Minimundo Requisitos funcionais Levantamento e Análise dos Requisitos Requisitos dos dados Análise Funcional Projeto Lógico Independente do SGBD SGBD Específico Projeto do Programa de Aplicação Implementação da Aplicação 3 Programas de Aplicação Mapeamento do Modelo de Dados Projeto Físico Criação do banco de dados Prof. Daniela Barreiro Claro MER Descreve os dados como – – – Entidades Atributos Relacionamentos Entidade – – É o objeto básico que o modelo ER representa Pode ser um objeto físico – 4 carro, casa, pessoa, funcionário, livro Objeto de existência conceitual ou abstrata Prof. Daniela Barreiro Claro Empresa, trabalho, curso, empréstimo MER Requisito de Negócios Banco de Dados da Empresa Claro Ltda A empresa Claro Ltda possui empregados. Ela está organizada em departamentos. – Atributos – – – 5 Cada entidade tem atributos que são propriedades particulares que a descrevem Cada instância de entidade terá um valor para cada um dos seus atributos Este conjunto de entidades do mesmo tipo compartilham as mesmas propriedades Prof. Daniela Barreiro Claro Q MER Diversos tipos de atributos ocorrem no modelo ER – Atributos Compostos X Simples (atômicos) – Atributos Monovalorados X Multivalorados – Valor único, ex. idade,bairro, cep Conjunto de valores, ex. cor, titulação Atributos Armazenados X Derivados 6 Atributos compostos podem ser subdivididos até os atributos simples Atributos calculados e derivados de outro atributo armazenado. Ex, idade, numeroEmpregados Prof. Daniela Barreiro Claro Q MER Atributos com valores nulos – – Uma entidade pode não ter valor aplicável a um atributo Valor NULL pode ser: Não aplicável – Apartamento, titulação Desconhecido – Existe mas está faltando. Ex. a altura de uma pessoa – Nao se sabe se existe. Ex. telefone residencial 7 Prof. Daniela Barreiro Claro MER Atributos Chaves – – Restrição de unicidade em atributos Valores distintos para cada uma das instâncias das entidades Domínio dos Atributos – – 8 Cpf, RG+ORGAO Conjunto de valores válidos para os atributos de cada entidade sexo=‘F’ | ‘M’ Prof. Daniela Barreiro Claro Q MER – Relacionamento 9 Um relacionamento é uma associação entre várias entidades. Cada instância de um relacionamento ri em R é uma associação de entidades, na qual a associação inclui exatamente uma instância de uma entidade de cada entidade participante. Prof. Daniela Barreiro Claro Q MER – Relacionamento Grau de um Relacionamento – – Relacionamento Recursivo – – 10 Número de entidades que participam desse relacionamento 2 entidades = grau 2 ou binário Cada tipo entidade que participa de um tipo relacionamento executa um papel particular no relacionamento As vezes o mesmo tipo entidade participa mais de uma vez em um tipo relacionamento Esses tipos relacionamentos são chamados Prof. Daniela Barreiro Claro Relacionamentos recursivos MER – Relacionamento Restrições são determinadas pelos requisitos de negócios Restrição: Razão de Cardinalidade – – Representa o número máximo de instâncias que um relacionamento pode participar As razões de cardinalidade podem ser 11 1:1, 1:N, N:1, M:N Prof. Daniela Barreiro Claro MER – Relacionamento Atributos de um Relacionamento – – 12 Pode ter atributos similares aos das entidades Exemplo, data em que o gerente começou a gerenciar Os atributos do relacionamento 1:1 podem migrar para qualquer uma das entidades participantes Para um relacionamento 1:N um atributo pode ser migrado apenas para a entidade do Prof. Daniela Barreiro Claro lado N Q MER – Relacionamento Atributos – – Restrições de Participação e Dependência de Existência – – 13 Para um relacionamento MxN os atributos são especificados como atributos do relacionamento Horas é a combinação de empregado-projeto Determina se a existência de uma entidade depende da existência de outra Ha dois tipos Total e Parcial Prof. Daniela Barreiro Claro MER – Relacionamento Entidade Fraca – – – 14 São entidades que não tem seus próprios atributos-chaves Entidade Fraca sempre possui uma restrição de participação total (dependência de existência) em relação ao seu relacionamento identificador Uma entidade fraca tem normalmente uma chave parcial que é um conjunto de atributos que a identifica quando relacionadas a uma entidade proprietária. Prof. Daniela Barreiro Claro MER Estendido Corresponde ao MER com novos recursos para atender aos novos requisitos de BD mais complexos O modelo EER engloba todo o MER mais – – – 15 Relacionamentos classe/subclasse Especialização/Generalização Restrições na Especialização/Generalização Prof. Daniela Barreiro Claro Modelo Relacional Representação do BD como uma coleção de RELAÇÕES Entidade(tipo Entidade)=relação Instância de uma entidade (entidades)=tupla atributos Relação Empregado NOME TEL Endereço 859 Daniela 3241 Rua I 675 Pedro 3455 Rua H tuplas 16 CPF Prof. Daniela Barreiro Claro Modelo Relacional Restrição de Domínio – Restrição de chaves e valores nulos – – – Duas tuplas distintas não podem ter valores idênticos para todos os atributos da chave Chave Primária=atributo-chave, Chaves candidatas Se um atributo tiver que ter um valor ele será definido como NOT NULL Restrição de Integridade de Entidade – 17 O valor de cada atributo deve ser um valor atômico Nenhum valor de chave primária pode ser NULL Prof. Daniela Barreiro Claro Modelo Relacional Restrição de Integridade Referencial – – – – 18 É classificada entre duas relações Mantém a consistência entre tuplas nas duas relações Cada tupla em uma relação que faz referência a outra relação deve-se referir a uma tupla existente nessa relação Chave estrangeira é o atributo da relação R1 que se refere à chave primaria de R2 Prof. Daniela Barreiro Claro Q Mapeamento do ER para o BD Projetar um esquema de banco de dados relacional Mapeamento das entidades fortes ou regulares – Mapeamento dos relacionamentos 1:N – 19 Para cada entidade regular criar uma relação com os seus atributos (chaves e simples) Procurar a entidade do lado N e inserir a chave estrangeira ou seja, a chave primária da outra relação Prof. Daniela Barreiro Claro Q Mapeamento do ER para o BD Mapeamento dos Relacionamentos M:N – 20 Para cada relacionamento M:N criar uma nova relação. Inserir como chave estrangeira as chaves primárias das relações. A concatenação delas formará a chave primária Prof. Daniela Barreiro Claro Q Mapeamento do ER para o BD Mapeamento dos Relacionamentos 1:1 – – – 21 Escolher uma relação e nela inserir a chave primaria da outra relação. Incluir todos os atributos simples do relacionamento como atributos da relação Dar prioridade às relações cm participação total no relacionamento. Prof. Daniela Barreiro Claro Q Mapeamento do ER para o BD Mapeamento das Entidades Fracas – – Criar uma relação para cada entidade fraca Inserir como chave primaria – 22 Todos as chaves primarias da entidade forte Chave parcial As chaves primarias vindas da entidade forte são chaves estrangeiras Prof. Daniela Barreiro Claro Q MER – Relacionamento A empresa Claro Ltda possui empregados. Ela está organizada em departamentos. Um empregado trabalha para um departamento. Cada empregado tem um supervisor que é um empregado.Cada empregado trabalha somente para um departamento.Um empregado gerencia um departamento.Um departamento controla um número qualquer (vários) de projetos.Um empregado está alocado a um departamento mas pode trabalhar em diversos projetos que não são controlados necessariamnte pelo mesmo departamento. Controla-se o número de horas que um empregado trabalha em cada projeto. Todo empregado deve trabalhar para um departamento. Cada empregado possui um dependente. Os atributos do dependente são: primeiro nome, data nascimento, sexo e parentesco. 23 Prof. Daniela Barreiro Claro Q Mapeamento do ER para o BD 24 Prof. Daniela Barreiro Claro Script do Banco de dados 25 Prof. Daniela Barreiro Claro