質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Oracle Database

Oracle Databaseは、米オラクルが開発・販売を行うリレーショナルデータベース管理システムです。

Hibernate

HibernateとはJava言語のobject-relational mapping (ORM)ライブラリであり、Object/Relational Mappingよりはるか多くの方法でアプリケーションをPOJOで機能付けることができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

3回答

19456閲覧

org.hibernate.exception.SQLGrammarException: could not extract ResultSetの解決方法

kchan

総合スコア10

Oracle Database

Oracle Databaseは、米オラクルが開発・販売を行うリレーショナルデータベース管理システムです。

Hibernate

HibernateとはJava言語のobject-relational mapping (ORM)ライブラリであり、Object/Relational Mappingよりはるか多くの方法でアプリケーションをPOJOで機能付けることができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2018/06/14 04:48

編集2018/06/14 05:22

Oracle DBでINSERT時のエラー

SELECT、UPDATEは可能でINSERT時に
could not extract ResultSetは発生します。

org.hibernate.Sessionのsave()内で発生していることは
わかったのですが、解決方法が見つからない状況です。

スタックトレース内に
Caused by: java.sql.SQLSyntaxErrorException: ORA-02289: 順序が存在しません。
と出力されていて、
直前で発行されている
SELECT XXXXX.NEXTVAL FROM DUAL
をSQL Developerで直接確認するとあるので、
ORA-02289は直接関係していないのではないかと思っています。


Java8, Hibernate5, Spring5, Tomcat8

追記
各バージョンをまとめて上げたことによって発生しています。
ソースコードはバージョンを上げる前(動いていた時)から変更はしていません。
Hibernate3 → 5, Spring3 → 5, Tomcat7 → 8

ご教授頂けると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kchan

2018/06/14 04:58

ソースコードは何があるとよろしいでしょうか。
m.ts10806

2018/06/14 05:02

質問者さんがどのようなコードを書いて問題が出たのかこちらは分かりません。「何が」と言われたら「その問題が起きたコード」としか。
m.ts10806

2018/06/14 05:09

「変更していません」と言われましても質問者さん以外知らないコードをどのように見ろと言うのでしょうか。
kchan

2018/06/14 06:44

PK key = (PK) session.save(Object); の中でエラーとなっているということしかわかっておりません。Objectの中身はデバッグで確認した限りでは正しい値でした。
m.ts10806

2018/06/14 06:45

コード全体を提示いただかないと何とも言えません。INSERT時に起きるのであればそのINSERTしている周辺のコードで良くないですか?既に回答が付いている通り、これだけじゃ解決につながる回答は誰もできませんよ。
kchan

2018/06/14 06:54

PJの情報もあって提示がしづらくて私も困っています。周りに有識者もおらずこのような質問の仕方になってしまっています。
guest

回答3

0

自己解決

xxx.hbm.xmlを修正したところ解消しました。

<param name="sequence">seq_admins</param> ↓ <param name="sequence_name">seq_admins</param>

http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd>

http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd>

投稿2018/07/03 07:53

kchan

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

PJの情報もあって提示がしづらくて

となると気になるところしか突っ込めないですが、
Hibernate3 → 5, Spring3 → 5の飛び級バージョンアップですね。
hibernateのExceptionキャッチしているのでそっちでしょうか。
非推奨になった機能とかその辺り使ってたりするのかもしれません。
フレームワークやプラグインのバージョンアップ時にはつき物です。
飛び級となればかなり勝手が違いますし。

ただやはりコードの提示がされない以上は、「あとはその辺(調べて)見てみて」としか言えないですね。

投稿2018/06/14 06:59

編集2018/06/14 07:00
m.ts10806

総合スコア80765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kchan

2018/06/14 07:21 編集

すみません。Hibernateは4 → 5でした。 > org.hibernate.exception.SQLGrammarException: could not extract ResultSet というExceptionです。 少し気になっているのですが直前に > ORA-02289: 順序が存在しません。 が出ており、デバッグで見るとシーケンスから値は取得できてます。 Hibernate初心者なので調べる手がかりでもわかればと思っております… 使用しているHibernateのライブラリです。 hibernate-commons-annotations-5.0.1.Final.jar hibernate-core-5.1.14.Final.jar hibernate-jpa-2.1-api-1.0.0.Final.jar Hibernateとつかないものも使っているかもしれないです…
guest

0

現象を再現できる最低限のコードを提示しないと適切なコメントは付きません。
たぶん、UPDATE時のSEQUENCE名が違間っているとか、UPDATE時のスキーマ名が間違っているのでしょう。

投稿2018/06/14 05:05

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kchan

2018/06/14 05:13

先ほど追記したのです、各種バージョンアップをしたところ発生しました。 正直どこが原因でというのをまだ特定出来ておりませんので、 コードの提示もできない状況です… 今はHibernateのバージョンでの変更点等を調査しております。 > UPDATE時のSEQUENCE名が違間っているとか、UPDATE時のスキーマ名が間違っているのでしょう。 UPDATEの処理は出来ています。INSERT時と見比べたりはしていますが、 今のところ間違ってはいなさそうです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問