Numa palestra, meu palestrante nos mostrou uma mesa sem uma chave primária. Ao ser questionado, ele disse que no 3NF, quando você remove dependências transitivas, não há problema em ter uma tabela sem uma chave primária.
No entanto, nenhuma chave primária implica que não há dependências funcionais - mas 3NF é a remoção de dependências transitivas, e fui ensinado que cada tabela precisa ter uma chave primária para normalização, pois trata-se de dependências funcionais.
Eu sei que é totalmente possível criar uma tabela sem uma chave primária, mas esse banco de dados é considerado normalizado se essa tabela existir?
Devo acrescentar que a tabela não possui nenhuma "chave única", nenhuma primária, nenhuma composta, nenhuma estrangeira.
A tabela mostrada possui três atributos, nenhum deles rotulado como primário ou exclusivo. Perguntei se foi um erro e ele disse que não há problema em ter um. Eu questionei a observação, pois nenhuma das informações da tabela pode ser identificada exclusivamente e ele afirmou que não há problema em ser assim. Isso vai contra o que me ensinaram sobre normalização.
count
atributo adicional aos elementos?3NF refere-se a uma tabela compatível com as 3 primeiras regras de normalização de dados.
A terceira regra requer uma chave. Você está certo, a mesa do palestrante não era 3NF.
fonte