- Banco de Dados RelacionalDependência Funcional
- Banco de Dados RelacionalNormalização3FN: Terceira Forma Normal
Ao construir um protótipo que calculava o risco sanitário de um terreno, um desenvolvedor principiante começou a desenhar um modelo relacional, o que o levou a propor as seguintes tabelas (onde o sublinhado representa a chave primária):
Terreno(rua,numero,tipoTerreno,CNPJ,nomeEmpresa,codigoRisco,nomeRisco,probabilidadeRisco) Empresa(CNPJ,nomeEmpresa,CPFs,nomePessoas)
Ao revisar o trabalho, um segundo desenvolvedor, mais experiente, detectou as seguintes propriedades:
1. codigoRisco → nomeRisco 2. CNPJ → nomeEmpresa 3. CPF → nomePessoa 4. {rua,numero} → CNPJ 5. Uma empresa possui vários donos, cada um com um CPF único, e um dono pode possuir várias empresas 6. Um terreno pode possuir vários riscos
Esse segundo desenvolvedor decidiu, então, colocar as tabelas na terceira forma normal, usando o número mínimo de tabelas.
O esquema que possui as seis propriedades detectadas pelo segundo desenvolvedor e que representa todas as informações desejadas pelo primeiro desenvolvedor é
Terreno(rua,numero,tipoTerreno,CNPJ,nomeEmpresa,codigoRisco,nomeRisco,probabilidadeRisco) Empresa(CNPJ,nomeEmpresa,CPFs,nomePessoas)
Ao revisar o trabalho, um segundo desenvolvedor, mais experiente, detectou as seguintes propriedades:
1. codigoRisco → nomeRisco 2. CNPJ → nomeEmpresa 3. CPF → nomePessoa 4. {rua,numero} → CNPJ 5. Uma empresa possui vários donos, cada um com um CPF único, e um dono pode possuir várias empresas 6. Um terreno pode possuir vários riscos
Esse segundo desenvolvedor decidiu, então, colocar as tabelas na terceira forma normal, usando o número mínimo de tabelas.
O esquema que possui as seis propriedades detectadas pelo segundo desenvolvedor e que representa todas as informações desejadas pelo primeiro desenvolvedor é