Boa noite!
Estou bolando a estrutura de um banco de dados, e pensando em criar um estrutura que acredito não ser comum, mas de alguma forma tenho a impressão de que funcione bem e facilite a manutenção.
Um exemplo comum: produtos e fornecedores (digamos que um fornecedor pode ter vários produtos). O normal é colocar o id do fornecedor na tabela de produtos.
O que penso é fazer é retirar o id do fornecedor da tabela de produtos, e criar uma terceira tabela, apenas para fazer o link entre os dois registros, similar ao funcionamento do relacionamento de muitos para muitos. neste caso, eu utilizaria chaves primárias compostas para controlar relacionamentos um-para-um ou chaves únicas para relacionamentos um-para-muitos.
Resumidamente, imagino utilizar em qualquer hipótese esta estrutura, independente do tipo de relacionamento. Sei que o número de tabelas aumentará, mas imagino que as tabelas ficarão mais limpas, sem ter de guardar referências a outras tabelas, deixando esta responsabilidade para estas tabelas adicionais dedicadas somente ao link.
Gostaria de ouvir a opnião para saber se a idéia é péssima, e porque?