Banco de dados

Disponível somente no TrabalhosFeitos
  • Páginas : 10 (2472 palavras )
  • Download(s) : 0
  • Publicado : 21 de novembro de 2012
Ler documento completo
Amostra do texto
| | |
| Sistemas de Banco de Dados |
  |
Aula 6 – Normalização básica |
  |
Professores autores |
Nélio Alessandro Azevedo Cacho (neliocacho@ect.ufrn.br)Xiankleber Cavalcante Benjamim (xianklebercb@gmail.com) |
|
| |
|   | |
|
|
  |
| | |
| Nas aulas anteriores você aprendeu como modelar seu banco de dados utilizando o modelo Entidade Relacionamento - ER eo modelo Relacional. Você já aprendeu também como fazer o mapeamento dos conceitos do modelo ER para o Modelo Relacional. Apesar de tudo isso, você pode estar se perguntando: como saber se o meu modelo Relacional foi bem feito? Nesta aula, iremos apresentar algumas técnicas básicas de como você pode verificar se seu modelo relacional foi bem definido ou não. O conjunto destas técnicas recebe onome de normalização. Nesta aula iremos mostrar como utilizar duas formas de normalização. | |
| | |
|
  |
| | |
|   |
Ao final desta aula, você será capaz de: |
  |
* Definir o que são anomalias de inserção, remoção e atualização; * Normalizar suas tabelas segundo a Primeira Forma Normal (1FN); * Normalizar suas tabelas segundo a Segunda Forma Normal (2FN). |
| || | |
|
  |
Anomalia de inserção, remoção e atualização |
Antes de falar sobre normalização, vamos entender o problema de anomalia de inserção, remoção e atualização. Anomalias são mudanças em dados que podem gerar uma inconsistência no banco de dados relacional. Tal inconsistência geralmente aparece quando o banco de dados é projetado de forma inadequada. Para exemplificar, usaremosa Figura 1 para mostrar os tipos mais comuns de anomalias. Note que na Figura 1 mostramos na parte superior a estrutura da tabela, como você esta acostumado a ver, e também, na parte inferior da figura, exemplos de valores para os registros. Os valores são importantes para facilitar o entendimento dos cenários que produzem as anomalias.Assim, na Figura 1 temos uma tabela chamadaAgenciaFuncionario que armazena os dados dos funcionários de um banco e também os dados sobre as agências. Como essas duas informações (Funcionário e Agência) são armazenadas na mesma tabela, é possível também saber onde cada funcionário trabalha (agência, endereço, telefone). Ou seja, à primeira vista, a tabela AgenciaFuncionario parece ser uma ótima opção para reduzir o número de tabelas e aumentar a velocidadedo sistema. Entretanto, tal solução pode gerar várias anomalias. |
FuncN | Nome | Cargo | Salário | NumAg | Endereço | Tel |
01 | Luiz | Gerente | 5000 | 1524 | Prudente de Morais, 12, RN | 3605-5223 |
02 | José | Secretario | 1500 | 1524 | Prudente de Morais, 12, RN | 3605-5223 |
03 | João | Gerente | 6000 | 1550 | Hermes da Fonseca, 15, RN | 4225-5889 |
04 | Luiz | Secretario | 1800 |1550 | Hermes da Fonseca, 15, RN | 4225-5889 |
05 | Irene | Gerente | 7000 | 2051 | Eng. Roberto Freire, 20, RN | 5223-8556 |
  |
Figura 1 - Exemplo de tabela AgenciaFuncionario
Fonte: Connolly e Begg (2000). |
Anomalia de inserção |
Uma anomalia de inserção acontece quando, ao inserir um dado, este dado pode gerar uma inconsistência no banco de dados. No exemplo da Figura 1, parainserir os detalhes (NumAg, Endereço, Tel.) de um novo funcionário, você deve tomar cuidado para usar exatamente os dados já cadastrados por outros funcionários. Por exemplo, um novo funcionário para a agência 1550 deve usar exatamente o mesmo endereço dos outros dois funcionários que também trabalham nesta agência. Se isto não for feito, teremos um problema de inconsistência de dados, onde doisfuncionários que trabalham na mesma agência possuem endereços diferentes. |
Anomalia de remoção |
Uma anomalia de remoção acontece quando, ao remover um registro, você pode gerar inconsistência no banco de dados. No exemplo da Figura 1, uma anomalia de remoção acontece quando removemos o funcionário de número 05. Neste caso, o objetivo é apenas remover os dados do funcionário e preservar os dados...
tracking img