PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
7989 99/09/03 17:03:26 RE(2):PB6.5: FETCH時にページ違反 By Gota
7983 99/09/03 13:50:51 RE(1):PB6.5: FETCH時にページ違反 By Taka
7964 99/09/02 19:00:21 PB6.5: FETCH時にページ違反 By Gota

カテゴリ:PowerBuilderの不具合?
日付:1999年09月02日 19:00 発信者:Gota
題名:PB6.5: FETCH時にページ違反

初めまして、困っているので教えてください。

特定のテーブルでカーソルを定義して、fetchするとページ違反が発生して困っています。
いらない物を省いて最小のアプリを作って試したのですが、やはり発生してしまいます。
Oracle8.0.5にPowerBuilder6.5 Enterpriseでネイティヴ接続しています。

以下のテーブルに何でもいいので1レコード以上入っていると発生します。
原因と対処方法を教えてください。よろしくお願いいたします。

テーブルとスクリプトは以下の通りです。

CREATE TABLE C70TEST
      (A CHAR(8) NOT NULL,
       B CHAR(2) NOT NULL,
       C CHAR(4) NOT NULL,
       D CHAR(6) NOT NULL,
       E CHAR(8) NULL,
       F CHAR(4) NULL,
       G NUMBER(7) NOT NULL,
       H CHAR(40) NULL,
       I CHAR(8) DEFAULT \'00000000\' NOT NULL,
       J DATE NULL,
       K CHAR(8) NOT NULL,
       L DATE NULL,
       M CHAR(8) NULL
);

SQLCA.DBMS = \"O84 ORACLE 8.0.4\"
SQLCA.LogPass = \"***\"
SQLCA.ServerName = \"db1\"
SQLCA.LogId = \"bbs\"
SQLCA.AutoCommit = False
SQLCA.DBParm = \"CommitOnDisconnect=\'No\'\"
connect using sqlca;
Open(w_test)


String ls_a
DECLARE lc_c70 CURSOR FOR  
  SELECT \"C70TEST\".\"A\"
    FROM \"C70TEST\"  
FOR UPDATE NOWAIT;

//カーソルオープン
OPEN lc_c70;
ii_sqlcode = SQLCA.SQLCode
If ii_sqlcode = -1 Then
ii_sqldbcode = SQLCA.SQLDBCode
is_sqlerrtext = SQLCA.SQLErrText
ROLLBACK USING SQLCA;
MessageBox(String(ii_sqldbcode),is_sqlerrtext,StopSign!)
Return 
End If

FETCH lc_c70 INTO
:ls_a;
If SQLCA.SQLCode = -1 Then
ROLLBACK USING SQLCA;
CLOSE lc_c70;
MessageBox(String(SQLCA.SQLDBCode),SQLCA.SQLErrText,StopSign!)
Return 
End If



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows98
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

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

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