SQL Server 2012 Introdução a Modelagem de Dados

Slides:



Advertisements
Apresentações semelhantes
Um pouco mais de cardinalidade e Relacionamentos
Advertisements

Abordagem Entidade Relacionamento
MER – Modelo de Entidade Relacionamento
Laboratório WEB Professora: Viviane de Oliveira Souza Gerardi.
DESENHO de BASE de DADOS RELACIONAL
MODELO RELACIONAL Transparências baseadas no capítulo 3 do livro de KORTH e SILBERCHATZ e capítulo 7 do livro de ELMASRI e NAVATHE Juliana Amaral e Rodrigo.
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
O Modelo E-R Definição: Características
Funcionalidades de um SGBD
Prof.: Bruno Rafael de Oliveira Rodrigues
Prof.: Bruno Rafael de Oliveira Rodrigues
SISTEMAS DE INFORMAÇÃO
Sistemas de Informação Redes de Computadores
Modelo Entidade-Relacionamento
Projeto de Banco de Dados
Maurício Edgar Stivanello
Sistema Gerenciador de Banco de Dados SGBD
Introdução a Bancos de Dados
(Dependência Funcional e Normalização)
Ferramentas CASE ERwin
Sistema de Banco de Dados
Banco de Dados Aplicado ao Desenvolvimento de Software
Tecnologias de Linguagens para Banco de Dados I
Banco de Dados Prof. MSc Wagner Siqueira Cavalcante
Normalização Disciplina: Banco de dados II.
Prof. Alfredo Parteli Gomes
Diagrama de Classes e Colaboração
BANCO DE DADOS APLICADO AO DESENVOLVIMENTO DE SOFTWARE
Banco de Dados Aplicado ao Desenvolvimento de Software - BDD
Análise MER: Fábrica de Calçados
Bancos de Dados Projeto de BD
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Profª Daniela TLBD.
Introdução a Banco de dados
Normalização Normalização é o conjunto de regras que visa minimizar as anomalias de modificação dos dados e dar maior flexibilidade em sua utilização.
Banco de dados.
Análise e Projeto de Sistemas
Análise de Sistemas de Informação
A abordagem de banco de dados para gerenciamento de dados
Objetivos Apresentar de forma breve a Metodologia de Modelagem Orientada a Objetos (OMT). A partir de um modelo de objetos de um sistema de informação.
Banco de Dados Aplicado ao Desenvolvimento de Software
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Introdução a Banco de Dados
Laboratório de Programação
ANÁLISE DE SISTEMAS 1Trabalho elaborado por Alexandra.
Normalização Álvaro Vinícius de Souza Coêlho
Banco de dados 1 Modelagem de Dados Utilizando MER
Desenvolvimento de uma base de dados
Banco de Dados I Unidade 3: Projeto de BD Relacional
Professor Me. Jeferson Bussula Pinheiro.
Aula 3 – Conceitos de banco de dados relacionais
Projeto de Banco de Dados
Banco de dados e tipos de programação
Banco de Dados I Aula 4 - Projeto Conceitual de Banco de Dados
Banco de Dados I Aula 3 - Projeto Conceitual de Banco de Dados
B ANCO DE DADOS Introdução ABTécnico. C ONCEITO É uma coleção de dados interrelacionados, representando informações sobre um domínio específico. Exemplos:
Students to Business – 2011/1 Fase 2. aGENDA O que é um banco de dados? Onde aplicamos o banco de dados? Laboratório: Navegando no SQL Server Management.
Projeto de Banco de Dados Ceça Moraes Dezembro/09.
Banco de Dados Prof. MSc Wagner Siqueira Cavalcante.
Modelagem de Dados Consiste em mapear o mundo real do sistema em um modelo que irá representar a realidade e o relacionamento existente entre os dados.
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
Modelagem Entidade-Relacionamento (MER)
Professor: reno nooblath
Modelagem de Dados Aula 4. 2 Implementação de Entidades Não é aconselhável simplesmente transcrever os nomes dos atributos para nomes de colunas. Nomes.
Processo de desenvolvimento de sistema de informação - DSI Diagrama de Entidade-Relação (DER) ou Entidade Associação (DEA) Representa as entidades envolvidas.
Gestão da Tecnologia da Informação Fundamentos de Sistemas de Banco de Dados Faculdade de Tecnologia Senac Jaraguá do Sul.
T ABELAS Banco de dados. Banco de dados = Conjunto de dados armazenado eletrônicamente Relação = Conjunto de elementos da mesma estrutura R ELAÇÃO.
Base de Dados Departamento de Informática – Celio Sengo Base de Dados Normalização do DEA e do Modelo Relacional Dr. Célio B. sengo Novembro, 2013.
Modelagem de Banco de Dados: Conceitos
Universidade de Passo Fundo Tecnologia em Sistemas de Informação TSI109- Fundamentos de Banco de Dados (Restrições de Integridade) Prof. Alexandre Tagliari.
Transcrição da apresentação:

SQL Server 2012 Introdução a Modelagem de Dados Bancos de Dados SQL Server 2012 Introdução a Modelagem de Dados

Modelagem de Dados Modelos Entidades e atributos Chave Candidata Chave Primária Relacionamentos Cardinalidade Regras de Conversão

Modelos Modelo conceitual - Representa as regras de negócio sem limitações tecnológicas ou de implementação. É a etapa mais adequada para o envolvimento do usuário que não precisa ter conhecimentos técnicos Visão Geral do negócio Facilitação do entendimento entre usuários e desenvolvedores Possui somente as Entidades e atributos principais Pode conter relacionamentos n para m.

Modelos Modelo lógico - Leva em conta limites impostos por algum tipo de tecnologia de banco de dados. (Banco de Dados hierárquico , Relacional ,etc.) Deriva do modelo conceitual Possui Entidades associativas em lugar de relacionamentos n:m Define as chaves primárias das Entidades Normalizado até a 3a. forma normal Adequado a um padrão de nomenclatura Entidades e atributos documentados

Modelos Modelo Físico - Leva em consideração limites impostos pelo SGBD (Sistema Gerenciador de Banco de dados) e pelos requisitos não funcionais dos programas que acessam os dados Elaborado a partir do modelo lógico Pode variar segundo o SGBD Possui tabelas e colunas

Entidade e Atributos Entidade pode ser definida como qualquer coisa do mundo real , abstrata ou concreta , sobre a qual se deseja guardar informações. Exemplos: Cliente , Produto , Contrato , Vendas , Fatura, Aluno, Sala de Aula, Professor, etc. Atributo é tudo o que se pode relacionar como propriedade da Entidade. Exemplos de atributos : Código do Produto, (Entidade Produto) , Nome do Cliente (Entidade Cliente), etc.

Entidade e Atributos

Características dos Atributos Domínio: conjunto de valores possíveis do atributo Tipo: É a natureza da informação que o atributo armazena Texto , Número , Indicador (sim/não) , Código, Data, Hora, etc. Obrigatoriedade: Se deve ou não possuir um valor (Null ou Not Null)

Chave Candidata Atributo ou grupamento de atributos que têm a propriedade de identificar unicamente uma ocorrência da Entidade . Pode vir a se tornar uma chave Primária. À chave candidata que não seja a chave primária também chama-se chave Alternativa.

Chave Primária Uma das chaves candidatas poderá tornar-se a chave primária Não deve haver duas ocorrências de uma mesma Entidade com o mesmo valor da chave Primária A chave primária não pode ser composta por um atributo opcional , ou seja, que aceite nulo. Os atributos identificadores devem formar o conjunto mínimo que pode identificar cada instância de um Entidade Não devem ser usadas chaves externas (Atributos sobre os quais você não tem controle. Ex: CPF) Cada atributo identificador da chave deve possui um tamanho reduzido Não deve conter informação volátil

Relacionamentos Um relacionamento pode ser entendido como uma associação entre instâncias de Entidades devido a regras de negócio. Normalmente ocorre entre instâncias de duas ou mais Entidades , podendo também ocorrer entre instâncias da mesma Entidade (auto-relacionamento).

Relacionamentos Por que o relacionamento é necessário ? Quando existem várias possibilidades de relacionamento entre o par de Entidades e se deseja representar apenas um Quando ocorrer mais de um relacionamento entre o par de Entidades Para evitar ambiguidade Quando houver auto-relacionamento

Cardinalidade Indica quantas ocorrências de uma Entidade participam no mínimo e no máximo de um Relacionamento Cardinalidade Mínima Cardinalidade Máxima Cardinalidade UM para UM Cardinalidade UM para N (Muitos) Cardinalidade N para N

Cardinalidade Cardinalidade Mínima - define se o relacionamento entre duas Entidades é obrigatório ou não. Ex: Entidade Pais e a Entidade UF

Cardinalidade Cardinalidade Máxima - define a quantidade máxima de ocorrências da Entidade que pode participar do Relacionamento. Deve ser maior que zero. Ex: Ex: Entidade Pais e a Entidade UF

Cardinalidade Juntando a cardinalidade mínima e máxima no mesmo diagrama temos: País possui no mínimo ZERO UF e no máximo VÀRIOS UF. UF pertence no máximo e no mínimo a UM País

Tipos de Relacionamentos Relacionamento UM-para-UM (1:1) Uma instância em “A” está associada com no máximo uma instância em “B”, e uma instância em “B” está associada com no máximo uma instância em “A”. Regra: No relacionamento Um para Um temos o lado opcional e o lado obrigatório . A chave primária se desloca em direção ao lado opcional

Tipos de Relacionamentos Exemplo: PESSOA pode ser um CLIENTE(opcional), mas todo CLIENTE é uma PESSOA (obrigatório). Assim a chave primária de pessoa se desloca para a Entidade cliente

Tipos de Relacionamentos Cardinalidade UM para Muitos (1:n):uma instância em “A” está associada a qualquer número de instâncias em “B”, e uma instância em “B”, todavia, pode estar associado a no máximo uma instância em “A” Regra: No relacionamento UM para N levamos a chave primária do lado UM para o lado N. Neste caso o atributo recebe o nome de chave estrangeira ou Foreign Key ( FK ). Chave Estrangeira é a chave primária de uma Entidade que aparece em outra Entidade em virtude do relacionamento

Tipos de Relacionamento Exemplo: Um PRODUTO é fornecido por somente um FORNECEDOR, enquanto que um FORNECEDOR pode fornecer muitos produtos.

Tipos de Relacionamento Muitos-para-muitos (n:n): uma instância em “A” está associada a qualquer número de instâncias em “B” e vice-versa. Alguns autores preferem chamar esta cardinalidade de m:n, por considerar que podem representar valores diferentes Regra: A cardinalidade N para N leva para o modelo lógico a necessidade de definição de mais um Entidade, chamada de Entidade Associativa

Tipos de Relacionamento Exemplo: Um CLIENTE celebra um ou vários Contratos. Um CONTRATO é celebrado por um ou vários clientes.

Tipos de Relacionamento A Entidade Associativa CLIENTE DO CONTRATO é necessária para que possamos identificar o contrato de um determinado cliente

Regras de Conversão Toda entidade vira uma tabela Relacionamentos que possuem atributos viram tabelas Relacionamentos são representados por chaves estrangeiras– atributo correspondente à chave primária de outra relação

Regras de Conversão Relacionamentos 1:1 podem ser mapeados em Um única tabela (quando possuem a mesma chave primária) Em duas tabelas (quando as chaves primárias são diferentes ou um dos lados do relacionamento é obrigatório) ou em três tabelas (quando o relacionamento é opcional em ambos os lados) Relacionamentos 1:n são mapeados de forma que a chave primária do lado “1” seja representada do lado “n” como chave estrangeira

Regras de Conversão Relacionamentos n:n devem ser transformados em dois relacionamentos 1:n, resultando numa nova tabela Relacionamentos ternários (ou de maior grau) geram novas tabelas Agregações normalmente geram novas tabelas Auto-relacionamentos geram novas tabelas se forem relacionamentos do tipo n:n Generalização/Especialização podem ser mapeadas em uma única tabela, em uma tabela para cada especialização ou uma tabela para cada entidade envolvida, dependendo da situação

Normalização Finalidade Minimização de redundâncias e inconsistências Facilidade de manipulações do Banco de Dados Facilidade de manutenção do Sistema de Informações

Normalização Anomalia de Exclusão - O que acontece se você excluir o funcionário de código igual a 3 ? O Setor vai ser excluído junto.

Normalização Anomalia de Alteração - O nome do Setor Suporte mudou para Apoio . Você vai ter alterar o nome em todos os registros da tabela.

Normalização Anomalia de Inclusão - Foi contratado um novo funcionário para o Setor Suporte.  Você vai ter que incluir um funcionário ao campo - QuantidadeFuncionarios -  em todas as ocorrências com setor de nome Suporte

Normalização Primeira Forma Normal (1FN) : Uma relação está na 1FN se, e somente se, todos os domínios básicos contiverem somente valores atômicos (não contiver grupos repetitivos). Para atingir esta forma normal devemos eliminar os grupos de repetição. a) Identificar a chave primária da entidade b) Identificar o grupo repetitivo e excluí-lo da entidade c) Criar uma nova entidade com a chave primária da entidade anterior e o grupo repetitivo A chave primária da nova entidade será obtida pela concatenação da chave primária da entidade inicial e a do grupo repetitivo.

Normalização

Normalização Segunda Forma Normal -(2FN)-   Uma relação R está na 2FN se, e somente se, ela estiver na primeira e todos os atributos não-chave forem totalmente dependentes da chave primária (dependente de toda a chave e não apenas de parte dela) a) Identificar os atributos que não são funcionalmente dependentes de toda a chave primária b) Remover da entidade todos esses atributos identificados e criar uma nova entidade com eles A chave primária da nova entidade será o atributo do qual os atributos removidos são funcionalmente dependentes.

Normalização Terceira Forma Normal (3FN):  Uma relação R está na 3FN se, e somente se, estiver na 2FN e todos os atributos não chave forem dependentes não transitivos da chave primária (cada atributo for funcionalmente dependente apenas dos atributos componentes da chave primária ou se todos os seus atributos não-chave forem independentes entre si) a) Identificar todos os atributos que são funcionalmente dependentes de outros atributos não chave; b) Removê-los e criar uma nova entidade com os mesmos.  A chave primária da nova entidade será o atributo do qual os atributos removidos são funcionalmente dependentes

Exercício de Modelagem

Exercícios de Modelagem Modelar o diagrama do amplificador Classe A do slide anterior, afim de armazenar o seguinte: A identificação (Q1, Q2, R1, etc…) do componente A identificação das portas de cada componente (se aplicável) A especificação elétrica (1K, 330R, etc) de cada componente As interconexões elétricas entre os componentes Terra, Vcc e Sinal de Entrada Q1 é um 2N7000 (MOSFET tipo N) Q2 é um BC548 (NPN)

Exercícios de Modelagem Estender o diagrama do exercício 1 para armazenar múltiplos diagramas Estender o diagrama do exercício 1 para armazenar a representação visual do circuito Armazenar somente a imagem dos componentes como um gráfico As linhas elétricas e pontos de interconexão deverão ser obtidas do modelo (banco de dados)