Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Penso muito antes de iniciar um projeto de sistema, principalmente quanto à modelagem do banco de dados. Neste novo projeto, pretendo criar uma normalização que seja o conceito de todos os meus futuros projetos, até porque pretende fazer como que atuem como se fosse um único sistema, uma plataforma de aplicativos.
Dito isso, gostaria de dar as seguintes informações iniciais:
1. Haverá um cadastro de contatos;
2. Esses contatos poderão ser herdados de uma pessoa física ou jurídica;
3. Os contatos terão telefones, endereços físicos e e-mails à vontade;
4. Não serão permitidos cadastros repetidos de e-mail, telefone ou endereços;
Significa que escrevi as tabelas: emails, telefones, endereços.
Os cadastros das tabelas emails e telefones estarão ligadas aos contatos através de outras tabelas: telefones_dos_contatos e emails_dos_contatos, tendo basicamente as campos item_id e contato_id para unir os cadastros na hora de fazer uma query.
Minha dúvida está na hora de ligar estes dados aos contatos. As tabelas de contatos para pessoa física e jurídica serão alvo das duas outras tabelas paralelas, mas para identificar qual tabela (se física ou jurídica) está sendo apontada, terei de criar um terceiro campo tipo_pessoa, que pode complicar um pouco mais na frente.
Peço a opinião dos profissionais que já passaram por isso.
Devo manter esse esquema ou criar apenas uma tabela de pessoa para cadastrar tanto pessoas físicas como jurídicas? Se for dessa maneira, deverei usar cpf e cnpj separados ou apenas um campo (melhor para query)?
Grato,
Eduardo Alcântara
Carregando comentários...