Exercício Exercício Aula Prática Utilizar o banco de dados ACCESS para passar o MER dos cenários apresentados anteriormente para tabelas. 1 Exercício oções básicas: ACCESS 2003 2 1
Exercício ISERIDO UMA TABELA 3 MER Revisão dos Principais Conceitos ISTÂCIA DE UMA ETIDADE 4 2
MER Revisão dos Principais Conceitos TIPOS DE ETIDADE ETIDADE FORTE: Entidade que possui atributo chave. ETIDADE FRACA: Entidade que não possui atributo chave. A identificação de uma instância depende da entidade forte. Depender 5 MER Revisão dos Principais Conceitos RELACIOAMETOS EXEMPLO: Livro X Livraria (vender, expor e encomendar) Lembrar que podem ocorrer vários tipos de relacionamentos entre duas entidades. 6 3
MER Revisão dos Principais Conceitos RELACIOAMETOS Os relacionamentos possuem características próprias dependendo do número de entidades envolvidas. AUTO-RELACIOAMETO ou RELACIOAMETO UÁRIO Envolve apenas uma entidade. Obs: gerente e gerenciado são papéis das entidades nos relacionamentos. Vamos ver um exemplo: 7 MER Revisão dos Principais Conceitos Exemplo: Considere as seguintes instâncias: Ari é gerente da Ana e do Rui e Lia é gerente da Ely. 8 4
MER Revisão dos Principais Conceitos RELACIOAMETO BIÁRIO: Envolve duas entidades. 9 MER Revisão dos Principais Conceitos RELACIOAMETO TRIPLO: Envolve três entidades. 10 5
MER Revisão dos Principais Conceitos Vimos também que nos relacionamentos o número de instâncias podem ser combinadas (em classes): Um para Um (1:1) Um para Muitos (1:) Muitos para Muitos (:) 11 MER Revisão dos Principais Conceitos Participação das entidades no relacionamento: Vimos que podemos representar restrições nos relacionamentos: ão deve haver nenhum projeto sem algum funcionário que participe dele Lotações 1 Projetos Participações Funcionários Departamentos ão pode haver nenhum funcionário que não esteja lotado em um departamento 1 Gerenciamentos ão deve haver nenhum departamento sem gerente 1 6
MER Revisão dos Principais Conceitos Com relação à participação da entidade no relacionamento, temos conceitos complementares que podem ser utilizados: Participação Total e Parcial: Linha dupla: Representa participação total no relacionamento (todo empregado está ligado a um departamento). Linha simples: Representa participação parcial no relacionamento (pode existir departamento sem empregado). 13 MER Revisão dos Principais Conceitos otação alternativa para relacionamentos Totais e Parciais: Linha dupla - Para cada empregado existe no mínimo 1 e no máximo 1 departamento. Todo empregado está ligado a um departamento (participação total). - Para cada departamento existe 0 ou muitos () empregados. Pode existir departamento sem empregado (participação parcial). 14 7
MER - ormalização Conceitos Complementares 15 Conceitos Complementares Agrupamento de dados: Os dados são agrupados nas seguintes categorias: - Dados que representam um conjunto de entidades; - Dados que representam conjuntos de relacionamentos; - Dados auxiliares não provenientes desses dois conceitos. Conjunto de dados: São dados provenientes de uma mesma categoria. Contudo, em muitos sistemas comerciais, o usuário obtém um conjunto de dados provenientes de várias categorias. 16 8
Conceitos Complementares Item de dados: Corresponde a cada elemento de um conjunto de dados. Exemplo: O conjunto de entidades Elementos químicos pode ser representado no modelo por um conjunto de dados de mesmo nome. Cada elemento desse conjunto (representando um elemento químico), é um item de dado. Sub-itens: Compreendem itens de dados mais complexos. Exemplo: Cada elemento de um conjunto de dados Funcionários representa os dados de um funcionário, mas este item deve ser composto dos sub-itens nome, endereço, data do nascimento, etc. 17 Conceitos Complementares Quando um item de dados é composto de sub-itens, dizemos que ele é um item composto ou um grupo de dados. Exemplo: O item endereço (pertencente ao sub-item Funcionários ) pode ser um grupo contendo os itens locais CEP e Cidade. Esses itens locais correspondem aos atributos compostos. Se um item de dados não é composto dizemos que ele é um item elementar. Exemplo: caso dos dados dos elementos químicos. 18 9
Conceitos Complementares Conjunto de Valores dos Atributos: São representados de várias formas: Tipo do item de dados: inteiros, decimal, alfabético, data, etc. Formato: como decimal com 3 casas depois da vírgula, etc. Restrições de integridade: são representadas sob várias formas. Por exemplo, uma classe de relacionamento 1: pode ser representada por restrições especiais nas ligações entre conjuntos de dados, ou seja, em uma determinada entidade só pode haver uma ocorrência de um elemento, para ocorrências de registros relacionados em outra entidade. 19 Conceitos Complementares Item de Busca: Diz respeito unicamente à eficiência do processamento a ser realizado pelo Gerenciador de Banco de Dados durante as operações com os dados. Por exemplo, se for feita busca intensa de determinado elemento de um conjunto de dados, será conveniente declarar este item como um item de busca. A eficiência do processamento deve ser entendida aqui como muito mais eficiente do que uma busca seqüencial. Busca seqüencial é a que é feita examinando-se elemento a elemento do conjunto de dados, seqüencialmente. Ordenação: Internamente a representação de um conjunto deve estar ordenada segundo algum ou vários itens do conjunto. Por exemplo, ordenar o conjunto de dados Funcionários por ome. 20 10
Conceitos Complementares Conceitos referentes ao nível interno de um Gerenciador de Banco de Dados: Em termos de nível interno de um Gerenciador de Banco de Dados, trabalhamos com arquivos (tabela). Cada arquivo é formado de uma seqüência de registros. Cada registro é composto de campos, que podem ser elementares ou compostos de sub-campos. Um campo de busca é um campo que provoca uma organização do arquivo possibilitando a busca eficiente de registros segundo os valores assumidos pelo campo. 21 MER - ormalização Processo de ormalização ~ Definição, Utilização, Anomalias de Atualização e Benefícios 22 11
MER - ormalização O conceito de normalização foi introduzido por E. F. Codd. Trata-se de um processo de análise de atributos de uma entidade, objetivando a estabilidade do modelo de dados. Através desta técnica gradativamente vamos substituindo um conjunto de entidades e relacionamentos por um outros, que se apresentarão purificados em relação às anomalias de atualização, geradas pelas inclusões, alterações e eliminações. Histórico: Codd Fagin 1970-1ª Formal ormal 1972-2 ª e 3 ª Forma ormal 1974-4 ª Forma ormal 23 MER - ormalização Existem duas formas de utilização da normalização, a saber: Sentido de cima para baixo (TOP-DOW): Após a definição de um modelo de dados (MER), aplica-se a normalização para se obter uma decomposição das entidades e relacionamentos em elementos mais estáveis, tendo em vista sua implementação física em um banco de dados. este caso a normalização serve para realizar um aprimoramento deste modelo, tornando-o menos redundante e inconsistente. Este recurso é um importante aliado da implementação física do modelo. 24 12
MER - ormalização Sentido de baixo para cima (BOTTO-UP): Aplicar a normalização como ferramenta de projeto do modelo de dados, a partir da normalização da documentação existente no ambiente analisado. Observar que a criação de modelos de dados partindo-se da normalização de arquivos e documentos pura e simplesmente, não é o mais indicado, pois na verdade estaremos observando o problema e não dando uma solução para ele. este caso estaremos projetando estruturas de dados que se baseiam na situação atual (muitas vezes caótica) e que certamente não vão atender às necessidades reais do ambiente em análise. 25 MER - ormalização Anomalias de Atualização A teoria da normalização está montada em torno do conceito de formas normais, onde uma tabela (entidade) está numa determinada forma normal se ela atender a um conjunto específico de restrições. A normalização é, portanto, um processo formal, passo a passo que examina os atributos de uma entidade com o objetivo de evitar anomalias na inclusão, exclusão e alteração de tuplas (registros) específicas. Vamos observar como uma anomalia de atualização pode ocorrer através da análise de um simples documento de pedido, apresentado a seguir. 26 13
MER - ormalização PEDIDO Loja BD Ltda. Prazo de Entrega Cliente: Endereço: Cidade: Inscrição CGC: UF: Inscrição Estadual: Cod. Prod. Unidade Qtde. Descrição dos P rodutos Valor Unitário Valor Total 27 MER - ormalização Quais seriam os atributos da entidade Pedido apresentada anteriormente? ro. Pedido Prazo de Entrega Cliente Endereço Valor Unitário Valor Total PEDIDO Cidade UF Unidade do Produto CGC Cód. do Produto Quant. do Produto Inscrição Estadual Descrição do Prod. 28 14
MER - ormalização Caso essa entidade fosse implementada como uma tabela em um banco de dados, as seguintes anomalias iriam aparecer: Anomalia de inclusão: Ao ser incluído um novo cliente, seus dados pessoais estariam vinculados à venda, sendo repetidos a cada registro realizado. Anomalia de exclusão: Se um cliente for excluído, poderão ser perdidos todos os dados da venda. Anomalia de Alteração: Se a faixa de preço de determinado produto for alterada, deverão ser verificados todos os registros, para serem feitas múltiplas alterações. 29 MER - ormalização Benefícios O processo de normalização causa a simplificação dos atributos de uma entidade, colaborando significativamente para a estabilidade do modelo, reduzindo-se consideravelmente as necessidades de manutenção. Para ser obtida esta estabilidade, é necessário que os atributos de uma mesma entidade sejam analisados e submetidos aos critérios da primeira, segunda e terceira formas normais. Dentro do que dispomos do mundo real de casos de normalização, a obtenção de uma entidade na 3ª Formal ormal é recurso suficiente para obtermos modelos de estruturas de entidades e atributos estáveis dentro de padrões de integridade. 30 15