BCNF vs 4NF (4ª Normalização)
A normalização de banco de dados é uma técnica que lida com sistemas de gerenciamento de banco de dados relacional. Erros de dados podem ser evitados em um banco de dados bem normalizado. A normalização é usada para reduzir a redundância de dados do banco de dados. Isso significa implementar tabelas de banco de dados e seus relacionamentos, eliminando redundância e dependência inconsistente. Existem algumas regras predefinidas para normalização. Essas regras são chamadas de formas normais.
- Primeira Forma Normal (1NF)
- Segunda Forma Normal (2NF)
- Terceira Forma Normal (3NF)
- Boyce-Codd Forma Normal (BCNF ou 3.5NF)
- Quarta Forma Normal (4NF)
Primeira forma normal é referida como a atomicidade de uma tabela. A atomicidade da tabela pode ser alcançada em duas etapas.
- Removendo colunas duplicadas da mesma tabela.
- Criação de tabelas separadas para colunas duplicadas relacionadas. (deve haver chaves primárias para identificar cada linha desta tabela)
Na Segunda forma normal, a tentativa é reduzir os dados redundantes em uma tabela extraindo-os e colocando-os em uma tabela separada. Isso pode ser feito seguindo as etapas a seguir.
- Selecione o conjunto de dados, que se aplica a várias linhas, e coloque-os em tabelas separadas.
- Crie os relacionamentos entre essas novas tabelas e as tabelas pai usando chaves estrangeiras.
Para levar o banco de dados para a Terceira forma normal, já o banco de dados deve ser obtido na primeira e na segunda formas normais. Quando o banco de dados está em 1NF e 2NF, não há colunas duplicadas nem subconjuntos de dados que se aplicam a várias linhas. A terceira forma normal pode ser obtida removendo as colunas das tabelas, que não são totalmente dependentes da chave primária.
Boyce-Codd Forma Normal (BCNF ou 3.5NF)
BCNF significa “Forma Normal Boyce-Codd”. Essa forma normal também é conhecida como a forma normal 3.5 de normalização de banco de dados. Para atingir o BCNF, o banco de dados já deve estar na terceira forma normal. Em seguida, os seguintes passos devem ser feitos para alcançar o BCNF.
- Identifique todas as chaves candidatas nas relações
- Identifique todas as dependências funcionais nas relações.
- Se houver dependências funcionais na relação, onde seus determinantes não são chaves candidatas para a relação, remova as dependências funcionais colocando-as em uma nova relação junto com uma cópia de seu determinante.
Quarta Forma Normal
Banco de dados deve estar na terceira forma normal, antes de normalizá-lo para a quarta forma normal. Se o banco de dados já estiver na terceira forma normal, o próximo passo deve ser remover as dependências multivaloradas. (Se uma ou mais linhas implicam a presença de uma ou mais outras linhas na mesma tabela, isso é chamado de dependência multivalorada.)
Qual é a diferença entre BCNF e 4NF (Quarta Forma Normal)?
• O banco de dados já deve estar no 3NF para levá-lo ao BCNF, mas o banco de dados deve estar no 3NF e no BCNF, para chegar ao 4NF.
• Na quarta forma normal, não há dependências multivaloradas das tabelas, mas em BCNF, pode haver dados de dependência multivalorada nas tabelas.