Procedure e Hibernate

Olá pessoal, estou com uma dúvida aqui com procedures no hibernate.

Pensei que fosse fácil de usar igual usar uma sequence, onde eu faço:

Object nextVal = hSession.createSQLQuery("select minhaSequence.nextval from dual").uniqueResult();

e não preciso ter a sequence mapeada.

Agora eu preciso executar uma procedure, alguém sabe como fazer?

Obrigada

hSession.getNamedQuery(“nomeDaProcedure”)

Obrigada.

Para fazer isso há necessidade de a procedure estar mapeada?

Obrigada.

Para fazer isso há necessidade de a procedure estar mapeada?[/quote]

Sim.

Preciso descobrir como mapear uma sequence.

v c t ajuda http://www.guj.com.br/posts/list/129626.java

Puxa, não estou conseguindo mapear como faço com as tabelas e views,

Tenho o arquivo hibernate.cfg.xml e o hibernate.reveng.xml. Sempre que preciso mapear uma tabela nova somente acrescento ela nesses dois arquivos, no cfg:

<mapping resource="MinhaTabela.hbm.xml"/>

e no reveng:

<table-filter match-name="MINHA_TABELA" match-schema="TESTE"> </table-filter>

Depois mando ele gerar as classes e fica tudo certo. Alguém sabe como faço para inserir uma procedure?

Pessoal, estou com um erro obscuro aqui…

Eu tenho uma base oracle e estou tentado rodar isso:

CallableStatement proc = con.prepareCall("execute minhaProcedure ?, ?, ?, ? ");

proc.setInt(1, 10);
proc.setInt(2, 20);
proc.setInt(3, 30);
proc.setInt(4, 40);
		
proc.execute();
con.commit();

O erro que ele dá é:

java.sql.SQLException: ORA-00900: instrução SQL inválida

Alguém sabe o que estou fazendo de errado?

Obrigada.

[quote=anurb.coimbra]Pessoal, estou com um erro obscuro aqui…

Eu tenho uma base oracle e estou tentado rodar isso:

CallableStatement proc = con.prepareCall("call minhaProcedure(?, ?, ?, ?)");
//Experimente também so uma cahamda para con.prepareCall("minhaProcedure(?, ?, ?, ?)");

proc.setInt(1, 10);
proc.setInt(2, 20);
proc.setInt(3, 30);
proc.setInt(4, 40);
		
proc.execute();
con.commit();

O erro que ele dá é:

java.sql.SQLException: ORA-00900: instrução SQL inválida

Alguém sabe o que estou fazendo de errado?

Obrigada.[/quote]

CallableStatement proc = con.prepareCall("execute minhaProcedure ?, ?, ?, ? ");

proc.setInt(1, 10);
proc.setInt(2, 20);
proc.setInt(3, 30);
proc.setInt(4, 40);
		
proc.execute();
con.commit();

Me diga qual é a vantagem de se usar Hibernate é se utilizar programação baseada em procedures?

[]'s

[quote=Felagund]
Me diga qual é a vantagem de se usar Hibernate é se utilizar programação baseada em procedures?

[]'s[/quote]

A vantagem de usar procedures é a manipulação de arquivos dentro da máquina do servidor de banco de dados e agilidade em processar quantidades gigantescas dados já que o processamento é dentro do banco, por exemplo. Usar com o hibernate é apenas unir o útil ao performático.

[quote=gnunesb][quote=Felagund]
Me diga qual é a vantagem de se usar Hibernate é se utilizar programação baseada em procedures?

[]'s[/quote]

A vantagem de usar procedures é a manipulação de arquivos dentro da máquina do servidor de banco de dados e agilidade em processar quantidades gigantescas dados já que o processamento é dentro do banco, por exemplo. Usar com o hibernate é apenas unir o útil ao performático.[/quote]

Eu sempre digo e ninguem me cre, se voce nao tiver um modelo orientado a objetos o hibernate nao só nao serve pra nada como atrapalha bastante. Cada coisa no seu lugar.