Hibernate - definir nomes das constraints

5 respostas
facholi

o hibernate gera os nomes das constraints(fk´s, pk´s, uk´s) quando gera as tabelas. Tem alguma maneira de informar estes nomes no mapeamento(por annotation) dos JB´s?

outra pergunta. como posso configurar uma constraint case insensitive?

5 Respostas

plentz

A anotação @UniqueContraint não permite isso (a também não pode ser alterada pelo pessoal do Hibernate, já que ela faz parte do javax.persistence). Porém, existe uma issue no Jira do Hibernate querendo criar uma extensão pra que isso seja possível.
http://opensource.atlassian.com/projects/hibernate/browse/ANN-470

[quote=facholi]outra pergunta. como posso configurar uma constraint case insensitive?

Constraint case insensitive? Como assim?

facholi

hmmm, desculpa ae… não expliquei direito…

por exemplo, uma unique(nome). se eu tentar inserir “facholi” e depois “Facholi”, o banco não reclama.

o que eu quero eh uma forma de não permitir estes nome duplicados sem checagem de maiusculo/minusculo.

plentz

Acredito que isso não seja possível através do hibernate, já que acho que é uma feature que poucos bancos possuem.

facholi

certo, vc tem alguma dica por experiência para fazer tal validação?

obrigado

plentz

Bom, a primeira idéia que me vem à cabeça é antes de você persistir seu objeto, fazer uma busca com ignore case pra ver se já existe um idêntico.

Criado 11 de abril de 2007
Ultima resposta 14 de abr. de 2007
Respostas 5
Participantes 2