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

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

ただいまの
回答率

90.84%

  • Java

    12848questions

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

  • Oracle Database

    64questions

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

  • Hibernate

    37questions

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

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

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 152

kchan

score 2

 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

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

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • kchan

    2018/06/14 15:44

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

    キャンセル

  • mts10806

    2018/06/14 15:45

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

    キャンセル

  • kchan

    2018/06/14 15:54

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

    キャンセル

回答 3

check解決した方法

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>

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

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

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/14 14:13

    先ほど追記したのです、各種バージョンアップをしたところ発生しました。
    正直どこが原因でというのをまだ特定出来ておりませんので、
    コードの提示もできない状況です…
    今はHibernateのバージョンでの変更点等を調査しております。

    > UPDATE時のSEQUENCE名が違間っているとか、UPDATE時のスキーマ名が間違っているのでしょう。
    UPDATEの処理は出来ています。INSERT時と見比べたりはしていますが、
    今のところ間違ってはいなさそうです。

    キャンセル

0

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

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

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

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/14 16:16 編集

    すみません。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とつかないものも使っているかもしれないです…

    キャンセル

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

  • ただいまの回答率 90.84%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Java

    12848questions

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

  • Oracle Database

    64questions

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

  • Hibernate

    37questions

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