PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
14940 01/04/04 09:20:07 RE(9):PB6.5: ORACLE ロールバックセグメントの指定 By きん
14938 01/04/03 22:40:20 RE(8):PB6.5: ORACLE ロールバックセグメントの指定 By Taka
14934 01/04/03 21:46:38 RE(7):PB6.5: ORACLE ロールバックセグメントの指定 By M.M
14933 01/04/03 21:17:04 RE(6):PB6.5: ORACLE ロールバックセグメントの指定 By きん
14929 01/04/03 16:02:41 RE(5):PB6.5: ORACLE ロールバックセグメントの指定 By M.M
14921 01/04/02 18:54:34 RE(4):PB6.5: ORACLE ロールバックセグメントの指定 By きん
14917 01/04/02 16:55:08 RE(3):PB6.5: ORACLE ロールバックセグメントの指定 By エイ
14911 01/04/01 16:29:41 RE(2):PB6.5: ORACLE ロールバックセグメントの指定 By きん
14910 01/04/01 15:02:44 RE(1):PB6.5: ORACLE ロールバックセグメントの指定 By エイ
14908 01/03/31 21:30:13 PB6.5: ORACLE ロールバックセグメントの指定 By きん

カテゴリ:データベース
日付:2001年04月03日 22:40 発信者:Taka
題名:RE(8):PB6.5: ORACLE ロールバックセグメントの指定

きんさん、こんばんは。

SET TRANSACTIONが成功しているのに、DELETE文の結果のエラーメッセージは確かに変だと思います。
DELETE文を実行するのがウィンドウ関数になっている点が気になりますが、SET TRANSACTION を
してからDELETEが発行されるまでの間に、何か他の処理をしていませんか?
更にその中で、明示的あるいは暗黙的にCOMMIT/ROLLBACKがかかっている可能性はありませんか?
(考えられる原因としては、一番アヤシイと思います)

トレースを採取し、SET TRANSACTION ? DELETE までの間に、他のDB処理によってCOMMIT/ROLLBACKが
出ているかどうか調べてみてください。

ちなみに...DELETE文を動的SQLでやっている理由って何ですか?
(静的SQLで十分っぽい気がしますが)


M.Mさんへ:
>Oracle8iのマニュアルで確認したのですが、SQLのSET TRANSACTION文はトランザクション
>の先頭に記述する必要があるそうです。

>ですからCONNECT文の直後に実行しないと、SET TRANSACTION文の設定が無効になっている
>のではないでしょうか?

ここでいうトランザクションとは、PBのTransactionオブジェクトのことではありません。(-_-;
更新系SQLの実行?COMMIT/ROLLBACKまでの間をひと区切りとした、理論上の「一連処理」を意味します。
ですので、「CONNECT直後に?」は全く関係ないでし。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows NT 4.0
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.