Este é um hóspede post por Anum Lodhi, que tem grande interesse em software de desenho
Assim como você exige um projeto para construir uma casa, você vai precisar de um projeto de banco de dados a fim de implementar um banco de dados com êxito. O processo de construção da segunda é a chamada "fase de concepção", que inclui uma série de passos pesados para o final produto a ser flexível. Essa fase realmente define as informações (+ sua estrutura) que vai para o banco de dados, os pressupostos relacionados com o tipo ou os valores dos itens de dados e as relações entre os itens de dados dentro do banco. Todas as empresas profissionais usam este procedimento conceber os seus dados e sua maneira a mais eficiente.
Ele inclui quatro etapas:
1. Requirement Analysis
Os requisitos de dados são determinados. A exigência exata do usuário do sistema é captured.All as informações relevantes relacionadas com o sistema é recolhida. O mais seis técnicas comum são:
- A amostragem da documentação existente, formulários, bancos de dados
- Total de Investigação e site
- Observação do ambiente de trabalho
- Questionários
- Prototipagem-construir um pequeno modelo de exigência do usuário para verificar antes de mão
- Joint Requirements Planning (JRP) - reuniões do grupo são conduzidas para analisar os problemas existentes
2. Entidade-Relacionamento (ERD)
ERD é uma notação de alto nível para expressar projetos de banco de dados. Ela define graficamente a estrutura do banco de dados de uma maneira muito simples e compreensível através do uso de símbolos.
As informações recolhidas durante o "passo Requirement Analysis" é transformado em um ERD (Entidade-Relacionamento) que os dados são organizados em entidades e relacionamentos entre eles. Então, ao invés de passar por uma longa peça de material, nós temos uma representação pictórica do mesmo tipo de informação que é mais fácil de ler.
Um exemplo de diagramas ER é a seguinte:

(foto cedida Wikipédia)
Várias linguagens de modelagem de dados pode ser usado para criar um ERD como notação pé de galinha, a notação Chen, iDeFiX (Integration Definition For Information Modeling), Shading notação, notação de Bachman, a UML (Unified Modeling Language) padrão etc Wikipedia tem uma boa página sobre ER diagramas aqui
3. Modelo Relacional
É muito fácil de compreender o cenário de um ERD, mas o último é muito fraco do ponto de vista da implementação. Os conceitos de subclasses (IS-A) Estruturas e relacionamentos, por exemplo, não pode ser implementado no banco de dados diretamente. Nesse ponto, modelo relacional entra em jogo.
Um modelo relacional utiliza um conceito único de tabelas (também chamadas de relações). Os conjuntos de entidades e as relações representadas no ERD são convertidas em mesas de um modelo relacional.
Há cinco passos para a conversão:
- Gire cada entidade não fraca definir em sua tabela correspondente com o mesmo conjunto de atributos
- Substituir um relacionamento por uma relação cujos atributos são as chaves dos conjuntos de entidade de conexão
- Algumas relações podem fazer bem se combinado ou excluídos. Por exemplo, as relações de apoio (para conjuntos de entidades fracas) não precisam ser convertidos em relação a todos.
- Substituir uma entidade fraca definido por uma relação cujos atributos são os seus próprios atributos (se houver), mais os atributos emprestados que ajudam a tornar a sua chave primária.
- Converter as estruturas subclasse usando abordagem orientada ao objeto, E / R ou conversão de estilo de valores nulos.
Explicação de conversão ER diagrama de modelo de relacionamento tem conceitos tão vasto que não será coberto neste post. Há muitos bons livros e recursos disponíveis online que torna mais fácil de entender. Para uma visão considerar este exemplo que eu tenho tirado de Wikipédia:
Um exemplo, idealizado muito simples de uma descrição de alguns relvars e seus atributos:
- Cliente (Customer ID, CPF, nome, endereço, cidade, estado, CEP, telefone)
- Order (Ordem, ID Cliente, Factura, Data do pedido, data prometida, Status)
- Ordem Line (Decreto n º, Ordem Linha, Código do produto, Quantidade)
- Fatura (Invoice, ID Cliente, Ordem, Data, Status)
- Invoice Line (Factura, Factura Linha, Código do produto, Quantidade vendida)
- Produto (Código, Descrição)
Neste projeto, temos seis relvars: Cliente, Pedido, Ordem Line, Invoice, Invoice Line e Produto. O negrito, sublinhado atributos são chaves candidatas. O não-negrito, sublinhado atributos são chaves estrangeiras.
4. Normalização
A normalização é um processo de elevação do rating forma normal. Fundamentalmente, elimina as seguintes dependências, a fim de evitar redundâncias e anomalias de dados:
- Dependência parcial: com base na parte da chave primária
- Dependência transitiva: com base em um atributo que não faz parte da chave primária
As três primeiras formas de normalização são:
- 1NF
- Menor forma implementável normal
- Requisitos de integridade chave primária entidade são preenchidas
- Cada célula contém um único valor
- Não-valores de chave primária são dependentes da chave primária
- 2NF
- Todas as condições estão reunidas 1NF
- Parcial
dependências são removidas
- 3FN
- Todas as condições estão reunidas 2NF
- Dependências transitivas removido
Formas superiores até 5NF e BCNF (Boyce-Codd Normal Form) também existem.
A normalização pode ser aplicado de duas maneiras:
- Normal formulários aplicados após o modelo relacional é criado
- O terceiro passo é ignorado e na criação de tabelas é feito com a normalização em consideração directamente
blog daleeman tem um post muito bom sobre normalização banco de dados. Leia: aplicação prática de normalização banco de dados que ajudará você a entender normalização banco de dados em detalhe.

















