Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Supondo que eu tenha uma tabela de "alunos" com muitos campos (EX: nome, ra, rg, cpf, telefone, endereco, numero, bairro, cep, pai, mae e etc..) o modo correto seria separar os campos em tabelas mais especificas como 'dados' e 'endereço', ou pode se deixar em uma tabela só?
Queria saber se as pesquisas feitas com uma única tabela com muitos campos é mais eficiente do que em tabelas 'desmembradas'.
De quebra, se alguem souber como funciona essa mesma questão no Doctrine ou ainda no Hibernate seria bem legal tambem. :D
Er.
Em ER siga as Formas Normais , no caso se "endereço" é único fica na mesma tabela (minha opinião) se tenho diversos (comercial,residencial etc0 se quebra em tabelas
Uma questão que Modelagem não tem O modelo certo, tem o que melhor se aplica
No caso de um projeto que trabalho a tabela 'aluno' tem 41 campos, sendo que até uns 12 deles eu poderia colocar em um tabela endereço.
Minha dúvida é quão otimizado é fazer essa separação.
Nesse projeto, a cada ano vou ter umas 1500 inserções de alunos e muita coisa envolve consultar a tabela 'aluno' só para pegar o nome e id.
Para um caso assim, você ainda colocaria tudo em uma única tabela?
Eu só separaria endereço se tivesse de ter mais de um, num modelo ER em um modelo OO seriam outros 500.
Qual a opnião de voces em relação a uma estrutura de dados modelo relacional normalizado MRN?
Sobre criação das tabelas ou um tabelão, ao invés de criar uma tabela apenas: alunos ( [pk] id_aluno, nome, genero, email, tel_res, tel_com, tel_cel, status)
Criar várias assim:
genero ( [pk] id_genero, desc_genero)
contato( [pk] id_telefone, tel_res, tel_com, tel_cel)
status ( [pk] id_status, desc_status)
obs o email não entra na tabela contato porque ele tem uma certa ligação com o id_aluno, pois nesse caso que exemplifico, será permitido apenas um email por aluno, podendo ser usado como login por exemplo.
pelo que tenho estudado o melhor mesmo é criar tabelas sem dó e relacionar elas de forma correta.
se um campo nao tem nada a ver com o id_aluno não adinta deixar ele na tabela alunos.
Por fim criar a tabela aluno com as chaves estrangeiras vindas das outras tabelas e criar as chaves estrangeiras nas outras tabelas que se relacionarem com a tabela alunos.
O que acham? o principal é nao acumular trabalho desnecessário pro futuro, o negócio é saber o melhor caminho.
você fala de modeladem ER ou UML ?