bom tarde a todos.
estou tentando fazer um exemplo, do uso de hibernate com anotações. quando realizo uma pesquisa não dá nenhum erro, mas quando vou tentar inserir um registro no banco está dando erro.
o problema é na seq. estou usando o postgre 8.2 e o hibernate 3.2
minha tabela no banco:
CREATE TABLE usuario
(
nome character(50),
senha character(30),
pkusuario serial NOT NULL,
CONSTRAINT pkusuario PRIMARY KEY (pkusuario)
)
tenho uma seq. no banco chamada: usuario_pkusuario_seq. o campo pkusuario da tabela usa essa essa seq.
minha classe está mapeada da sequinte maneira:
@Entity
@Table(name="usuario")
@SequenceGenerator(name="SEQ",sequenceName="usuario_pkusuario_seq")
public class Usuario {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator="SEQ")
private int pkusuario;
Hibernate: values nextval for usuario_pkusuario_seq
06/08/2007 14:01:20 org.hibernate.util.JDBCExceptionReporter logExceptions
WARNING: SQL Error: 0, SQLState: 42601
06/08/2007 14:01:20 org.hibernate.util.JDBCExceptionReporter logExceptions
SEVERE: ERROR: syntax error at or near "nextval"
Exception in thread "main" org.hibernate.exception.SQLGrammarException: could not get next sequence value
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:96)
at org.hibernate.id.SequenceHiLoGenerator.generate(SequenceHiLoGenerator.java:58)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:99)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)
at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)
at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:535)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:523)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:519)
at Teste.main(Teste.java:38)
Caused by: org.postgresql.util.PSQLException: ERROR: syntax error at or near "nextval"
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1548)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1316)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:191)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:351)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:255)
at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:75)
... 11 more
agradeço a todos.