2010-04-20 14 views
1

J'utilise JdbcTemplate.queryForInt pour insérer une ligne dans la base de données, puis récupérer l'ID. La requête est . Si je cours la déclaration dans Flamerobin, cela fonctionne très bien.La requête Firebird plante avec org.firebirdsql.jdbc.FBSQLException: exception GDS. 335544364. Demande d'erreur de synchronisation

Cependant, si je le lance à partir de Java, je reçois l'erreur suivante:

org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [INSERT INTO metadocs(NAME) values (?) RETURNING METADOCID]; SQL state [HY000]; error code [335544364]; GDS Exception. 335544364. request synchronization error; nested exception is org.firebirdsql.jdbc.FBSQLException: GDS Exception. 335544364. request synchronization error 

Caused by: org.firebirdsql.jdbc.FBSQLException: GDS Exception. 335544364. request synchronization error 

Est-ce que quelqu'un a une idée de ce que cela pourrait être causé par?

Répondre

0

Contrairement à Oracle, je ne suis pas sûr que le Jaybird JDBC driver prend en charge la syntaxe RETURNING. Alternativement, vous pouvez regarder la méthode getGeneratedKeys(), discuté here.

+0

J'ai vérifié que firebird supporte la clause "RETURNING" mais le pilote JDBC n'a pas :-( – Flyhard

+0

J'apprécie le retour d'information. – trashgod