Pegar Generator

2 respostas
joao_paulo_1000

Pessoal,

Preciso pegar o número do generator atual de uma tabela.

Estou fazendo assim:

Query query = session.createQuery("select gen_id(GEN_ORDEMSERVICO,0) from rdb$database");
		
		Integer valor = (Integer) query.uniqueResult();

Porém, dá o erro:
org.hibernate.hql.ast.QuerySyntaxException: rdb$database is not mapped [select gen_id(GEN_ORDEMSERVICO,0) from rdb$database]

Tá dizendo que o rdb$database não está mapeada, mas como mapear isso? Ou se alguém tiver uma sugestão melhor, agradeço.

Estou utilizando Hibernate 3 com annotations.

Obrigado

2 Respostas

Hebert_Coelho

Utilize NativeQuery ao invés Query apenas.

O proprio session já deve ter métodos para criar consultas com nativeQuery.

Aqui tem dicas de como utilizar: JPA Consultas e Dicas.

joao_paulo_1000

Beleza

Fiz assim e deu certo:

SQLQuery query = session.createSQLQuery("select gen_id(GEN_ORDEMSERVICO,0) from rdb$database");

BigInteger valor = (BigInteger) query.uniqueResult();

Obrigado e parabéns pelo conteúdo.

Criado 6 de junho de 2012
Ultima resposta 6 de jun. de 2012
Respostas 2
Participantes 2