PB 電子会議室
| 発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) | 
|---|---|---|
| 6689 | 99/06/10 11:33:43 | PB6.5: Oracle8のカーソルを使ったDELETE処理について By ita | 
カテゴリ:データベース
日付:1999年06月10日 11:33 発信者:ita
題名:PB6.5: Oracle8のカーソルを使ったDELETE処理について
  はじめて質問します。
Oracleのカーソル処理について教えて下さい。
ネイティブ接続でカーソルを使ったDELETEがうまく出来ません。
下に処理スクリプトを書きましたが FETCH文で「PB60J」がページ違反します。
詳細内容は「モジュール:ORA803.DLL , アドレス: 0217:O2ead875」です。
[例]
DECLARE curs CURSOR FOR  
  SELECT ..... FROM \"表名\" WHERE ..... FOR UPDATE;
OPEN curs;
DO
  FETCH curs INTO ..... ;
  IF SQLCA.SQLCode = 0  THEN
    DELETE FROM \"表名\" WHERE CURRENT OF curs;
    .
    .
  ELSE
    e_fg = True
  END IF
LOOP UNTIL e_fg
COMMIT;
CLOSE curs;
削除対象の情報が1万件ほどありCASCADEで下の表が存在するため、単純なDELETE文では
ロールバックエリアがあふれてしまいます。
これは Net8 (8.0.3.0.2) の不具合なのでしょうか ??
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS Oracle SQL*Net 8
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.




