Cyberoma 5 Report post Posted March 14, 2012 Boa Noite amigos, estou com uma duvida sobre como estruturar um banco para um sistema de cadastro. Vou explicar. Vai ter um formulario com um radio button para a pessoa escolher se é PESSOA FISICA ou PESSOA JURIDICA. A estrutura do Banco que eu pensei foi: Clientes (Terá os dados do cliente): id_cliente nome_cliente cpf_cliente ... ... ... Empresa (Terá os dados de uma Empresa assossiado ao id_cliente da tabela Clientes) id_empresa nome_empresa id_cliente cnpj_empresa ... ... Mas assim, quando o cliente for Pessoa Juridica, na tabela Cliente o campo cpf_cliente vai ficar vazio. Eu queria saber se a essa minha ideia estar certa, ou existe outra forma de estruturar esse Banco. Desde ja agradeço. OBS: Criei este topico aqui, porque vou fazer o sistema em PHP, e confio muito na galera daqui. Share this post Link to post Share on other sites
manolegal 12 Report post Posted March 14, 2012 Cria um único campo cpf_cnpj. Share this post Link to post Share on other sites
Cyberoma 5 Report post Posted March 14, 2012 Mais a minha ideia estar correta? É assim que estrutura o Banco neste caso? Share this post Link to post Share on other sites
Vinicius Ianni 189 Report post Posted March 14, 2012 Sim, o caminho é esse. Você precisa saber quais são os requisitos do sistema, que tipo de informação quem usar precisará saber, se essas informações serão armazenadas no banco, com base nisso, fica mais fácil criar um modelo e enxergar quais situações podem não estar cobertas pela modelagem inicial (como o caso de cliente pessoa juridica) e ir ajustando o modelo inicialmente criado para um que contemple todas as possibilidades da forma mais eficiente possivel Share this post Link to post Share on other sites
Cyberoma 5 Report post Posted March 14, 2012 Entendi, mas voces acham melhor eu criar uma tabela para endereço e outra para telefones? O grande "problema" da especialização muitas vezes é a performance do BD, que fica sacrificada em função do grande número de acessos para recuperação de informações. Voces acham que devo levar isso em consideração? Pois vou precisar fazer varios INNER JOIN e pode ser que o sistema fique mais lento. ------------------------------------------ Outra coisa, qual software voces me recomendam para desenvolver meus Bancos? 1- Mysql Administrator 2- Mysql Workbench Share this post Link to post Share on other sites
Vinicius Ianni 189 Report post Posted March 14, 2012 Eu colocaria endereço e telefone separados se forem informações pouco acessadas, caso contrario, manteria na mesma tabela, e filtraria no sql as informações que desejo naquele momento. Normalmente eu modelava no workbench e criava no administrator, mas a ultima versão do workbench está bem integrada, é questão de testar qual você acha melhor. Share this post Link to post Share on other sites
Cyberoma 5 Report post Posted March 14, 2012 Eu colocaria endereço e telefone separados se forem informações pouco acessadas, caso contrario, manteria na mesma tabela, e filtraria no sql as informações que desejo naquele momento. Normalmente eu modelava no workbench e criava no administrator, mas a ultima versão do workbench está bem integrada, é questão de testar qual você acha melhor. Entendi, muito obrigado pela ajuda Vinicius. vou usar o workbench 5.0. Pode modelar e criar tudo nele mesmo. abraço Share this post Link to post Share on other sites
Vinicius Ianni 189 Report post Posted March 14, 2012 Precisando, estamos ai :thumbsup: Share this post Link to post Share on other sites
Cyberoma 5 Report post Posted March 16, 2012 Galera eu fiz a estrutura e o relacionamento de minha tabelas.. Olhem se estar certo, se estar faltando algo.. Estou em duvida sobre o relacionamento das tabelas endereço e telefones com a tabela empresas. Uploaded with ImageShack.us Abraço ^^ Share this post Link to post Share on other sites