Dúvida Hibernate - Unique Composta

4 respostas
Emerson_Mendes

Boa tarde…

aeee, sou iniciante em Hibernate Annotation, então desculpem a minha dúvida…

é o seguinte…

Tenho duas classes referenciadas no hibernate. (Relacionamento 1…n.)

Porém a classe que tem o @ManyToOne necessita de uma constraint unique de um atributo String e do objeto que é referenciado… ou seja, uma unique composta…

Porém, quando coloco a propriedade “unique = true” na @Column e @JoinColumn, e mando o hibernate gerar o banco, a unique não fica composta… (fica um index de unique pra cada atributo… e não um unico index com os dois)…

Teria como fazer a unique composta em um único INDEX para eu não ter que alterar direto no banco, e conseguir fazer o Hibernate gerar o DB pra mim ?!?!

Vlww…

4 Respostas

vanzella

http://www.hibernate.org/hib_docs/annotations/reference/en/html/

Emerson_Mendes

hummm, Ok… mas na documentação diz como criar UNIQUES simples… e não compostas(no mesmo INDEX), no caso dois atributos dentro do mesmo INDEX de UNIQUE.

no meu caso seria o seguinte:

tenho uma classe Cidade e uma classe Estado.

A classe Cidade tem dois atributos:

private Estado estado;
private String nome; // Nome da cidade

No atributo ‘estado’, uso a anotação @OneToMany e @JoinColumn
No atributo ‘nome’, uso a anotação @Column e coloco o unique = true.

O que eu queria fazer é um unico UNIQUE para os dois atributos.

é possivel?!

Vlwww

boo

Dá uma olhada no tópico ‘2.2.1.1. Defining the table’ da documentação do Hibernate Annotations.
(respondido só por ser um dos primeiros resultados do google)

adriano.ferranti

http://www.hibernate.org/hib_docs/annotations/reference/en/html_single/#d0e1700

Criado 11 de junho de 2007
Ultima resposta 4 de mar. de 2009
Respostas 4
Participantes 4