O objetivo da Forma Normal de Boyce-Codd (BCNF) é aumentar a integridade dos dados organizando as colunas e tabelas de um banco de dados relacional para obter a normalização do banco de dados. A normalização do banco de dados ocorre quando há relacionamentos estabelecidos entre tabelas e quando as tabelas têm regras definidas para tornar o banco de dados mais flexível e preservar os dados.
Os objetivos da normalização do banco de dados são eliminar dados redundantes e garantir que as dependências de dados façam sentido.
Um banco de dados é normalizado quando os mesmos dados não são armazenados em mais de uma tabela e quando apenas dados relacionados são armazenados em uma tabela.
Origem da Forma Normal de Boyce-Codd
Seguindo uma série de diretrizes, assegure-se de que os bancos de dados estejam normalizados. Essas diretrizes são chamadas de formulários normais e são numeradas de um a cinco. Um banco de dados relacional é descrito como normalizado se atender às três primeiras formas: 1NF, 2NF e 3NF.
BCNF foi criado como uma extensão para a terceira forma normal, ou 3NF, em 1974 por Raymond Boyce e Edgar Codd. Os homens estavam trabalhando para criar esquemas de banco de dados que minimizassem redundâncias com o objetivo de reduzir o tempo computacional. O terceiro formulário normal remove colunas que não são dependentes da chave primária, além de atender às diretrizes no primeiro e segundo formulários normais. O BCNF, que às vezes é chamado de 3.5NF, atende a todos os requisitos do 3NF e requer que as chaves candidatas não tenham nenhuma dependência de outros atributos em uma tabela.
Na época da criação do BCNF, Boyce foi um dos principais desenvolvedores do Structured English Query Language (SQL), que melhorou a recuperação de dados usando o modelo relacional do Codd. Nesse modelo, Codd postulou que a complexidade estrutural dos bancos de dados poderia ser reduzida, o que significava que as consultas poderiam ser mais poderosas e flexíveis.
Usando suas percepções de bancos de dados relacionais, Codd definiu as diretrizes 1NF, 2NF e 3NF. Ele se juntou a Boyce para definir o BCNF.
Chaves Candidatas e BCNF
Uma chave candidata é uma coluna ou combinação de colunas em uma tabela que forma uma chave exclusiva no banco de dados. A combinação de atributos pode ser usada para identificar um registro de banco de dados sem referir-se a outros dados. Cada tabela pode conter várias chaves candidatas, sendo que qualquer uma delas pode se qualificar como chave primária. Uma tabela contém apenas uma chave primária.
As chaves do candidato devem ser exclusivas.
Uma relação está no BCNF se cada determinante for uma chave candidata. Considere uma tabela de banco de dados que armazena informações de funcionários e possui os atributos <> >,
Nesta tabela, o campo
| ID do Empregado | Primeiro nome | Último nome | Título |
| 13133 | Emily | Smith | Gerente |
| 13134 | Jim | Smith | Associado |
| 13135 | Emily | Jones | Associado |
A chave candidata para este banco de dados é a




