publicclassCliente{privateIntegerid;privateStringnome;privateStringfone;privateStringcnpj;...//getters e setters}
considerando o meu pojo:
Qual seria a melhor definicao para escolher qual atributo seria a minha chave primária
Id ou cnpj já que estou utilizando hibernate.
pois tanto o id quanto o cnpj pode identificar unificamente o cliente
eu colocaria o id como chave primaria e o cnpj como unique…
mas nao tenho certeza se essa eh a abordagem mais correta…
vamos ver se alguem tem mais alguma opiniao…
ah uma observacao: o id tem que ser Long.
fallows
asandrob
Eu uso só o CNPJ, já que é único. Senão tu ficas com duas referencias únicas para um mesmo registro ID e CNPJ.
yoshikichi
Nesse ponto você tem esquecer java e pensar no banco.
Chave primaria como ai e auto incremento indexa melhor o banco.
Seu cpf irá ser char, vc consegue fazer uma busca binaria em um char?
Mas tb tem o lance do cpf ser unico o que faz dele uma chave, ai vc escolhe manter ele como uma chave candidata ou primaria.
falow…
eu escolheria o pk com auto incremento.
asandrob
Não necessariamente um char, pode ser long.
K
ksio_thadeu
Eu estou usando banco oracle, deveria criar uma sequencia para cada pojo para fazer o incremento da pk ou usar a sequencia do hibernate_sequence