Como inserir sequencialmente no Oracle usando hibernate

2 respostas
W

Pessoal, estou aprendendo hibernate, só que a apostila que sigo utiliza o MySQL e eu uso o Oracle, porém também estou aprendendo Oracle ainda e pelo que já li não dá pra criar uma tabela no Oracle que seja auto-incrementada.
Criei uma sequence no Oracle, mas não sei como usar esse sequence em uma tabela já existente ou em uma nova.
Vejam o que tentei no hibernate:

no arquivo .hbm.xml

[color=red]<id name=“coluna_para_auto_incremento” column=“coluna_para_auto_incremento” type=“int”>

<generator class=“sequence”>

<param name=“nome_da_sequence”>coluna_para_auto_incremento</param>

</generator>

</id>[/color]

Mas não funciona, retorna a mensagem “could not get the next sequence value”.

Quando eu retiro a tab <generator e insiro o número na sequência através da minha página jsp, funciona normalmente, mas o interessante é que esse número seja gerado automaticamente e não que eu tenha que digitá-lo.

Se alguém souber me dizer como eu utilizo uma sequence e como que configuro o hibernate para inserir no oracle ficarei grato.
Obrigado.>

2 Respostas

P

vc pode resolver isso pelo proprio banco criando uma triger que gere o auto incremento. Ja no hibernate, disconheço pois uso jpa (top link) que resolve isso bem facil com uma anotation.

vai a dica, use uma triger.

vlw

W

Ok, vou estudar essa possibilidade, obrigado.

Criado 1 de maio de 2008
Ultima resposta 9 de mai. de 2008
Respostas 2
Participantes 2