Cadastro em banco de dados

7 respostas
C

Olá pessoal!

Alguém poderia me dar alguma dica para que eu consiga implementar algo para que o usuario não cadastre duas “propostas” com o mesmo número. Eu devo fazer isso no java ou no SQL?

Obrigado!

Cristiano

7 Respostas

rogeriop80

Isso seria uma regra de negocio certo ??!!!

Eu não aconselho colocar regras de negocio no banco, isto pq, vc pode ter que mudar de banco um dia e o SQL não ser compativel… ta certo que para este caso não é o fim do mundo, mas já sou vacinado a fazer fora das camadas de banco.

[]´s

Lucas_Teixeira

Eu discordo.

Acho que se o banco oferece tal recurso (Unique Key) devemos utilizá-lo sem medo. Oras, se um dia você for mudar de banco, já tem trabalho o suficiente para não querer se preocupar com chaves, não é? (Uma vez que elas garantem a consistencia de suas informações).

E outra, vai conectar no banco, verificar se já existe para depois inserir? Hum… na minha opiniao é custoso demais. Eu aconselho o uso das UKs.

C

Como faço isso então?

Lucas_Teixeira

Ué, define no banco como Unique Key

Armitage

Eu concordo com o Lucas… até porque fazer este tipo de verificação no sistema ao meu ver diminui um pouco a performace… afinal seria um acesso ao banco para verificar e outro para inserir.

Se o banco possui recursos para facilitar a minha vida porque deixar de usá-los? A menos que seja algo MUITO especifico que exista só naquele banco de dados ai sim talvez eu não usasse…

rogeriop80

Desculpe, acho que realmente me expressei mal, neste ponto de usar chaves concordo que devem ser usadas, mesmo pq acho que todo o banco que ser preze tem chaves primarias hoje.

Eu não concordo em colocar lógica de negocios em triggers e procedures, pois caso vc queira migrar de banco terá que refazer logicas que teoricamente não dizem respeito a banco.

Desculpe, me expressei mal.

[]´s

kuchma

Use chaves unicas como o pessoal recomendou: se der erro, ja tem. Se nao der, OK.

Porem, se for possivel, recomendo que voce atribua os numeros automaticamente, ao inves de deixar o usuario atribuir (mas ai depende do teu cenario).

Marcio Kuchma

Criado 28 de dezembro de 2004
Ultima resposta 28 de dez. de 2004
Respostas 7
Participantes 5