2

Java アプリケーション ログでこのエラーが発生しました。これは Java db 接続プールを使用しています。Oracle一時テーブルを使用する前にこれを経験した人はいますか? あなたの解決策は何ですか?どんな助けでも大歓迎です。

4

1 に答える 1

4

接続を終了して、最初からやり直してください。実行中のプロセスがあるかどうかを確認するには、以下のコードを使用して、実行中のプロセスを見つけてください。
エラーの原因: 同じセッションの同時トランザクションによってすでに移入されているトランザクション一時テーブルにアクセスしようとしました。

処置: 同時トランザクションがコミットまたは中止されるまで、一時表にアクセスしないでください。

SELECT 
   o.object_name
 , s.sid, s.serial#
 , s.username
 , s.osuser, s.machine 
 , 'alter system kill session '''||to_char(s.sid)||','||to_char(s.serial#)||''';' ks  
FROM 
   user_objects o
 , v$lock a
 , v$session s  
WHERE 
 o.object_name = 'table_name_here'     
AND  a.id1 = o.object_id    
AND  a.type = 'TO'    
AND  a.sid = s.sid
;
于 2012-04-04T17:06:53.707 に答える