PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
13412 00/09/29 15:44:40 RE(8):PB6.5: SQLCODE By とみくん
13407 00/09/29 13:20:46 RE(7):PB6.5: SQLCODE By Taka
13406 00/09/29 12:27:06 RE(6):PB6.5: SQLCODE By とみくん
13401 00/09/28 16:21:09 RE(5):PB6.5: SQLCODE By ryochan
13400 00/09/28 16:00:25 RE(4):PB6.5: SQLCODE By M.M
13399 00/09/28 15:38:54 RE(3):PB6.5: SQLCODE By ryochan
13398 00/09/28 15:09:55 RE(2):PB6.5: SQLCODE By とみくん
13397 00/09/28 15:01:25 RE(1):PB6.5: SQLCODE By M.M
13395 00/09/28 14:24:37 PB6.5: SQLCODE By とみくん

カテゴリ:スクリプトの記述
日付:2000年09月29日 13:20 発信者:Taka
題名:RE(7):PB6.5: SQLCODE

とみくんさん、こんにちは。

>1DWの検索 ---> 2埋め込みSQLで検索(select)---> 3DWで検索
>この順番でやると、3の処理の時sqlcodeは全く持って信用ならないですよね。

誤解されていますね。
データウィンドウでの処理(RetrieveやUpdate関数)では、SQLCA.プロパティに結果が代入
されることはありません。
上記1の直後に判定したとしても、それ以前に実行した埋め込みSQL(CONNECT文含む)の
結果が温存されているはずです。

よく、
 dw_1.Retrieve()
 if sqlca.sqlcode <> 0 then ...
みたいなスクリプトを書く方がいらっしゃいますが、これは誤りです。
Retrieve関数は成功していても、それ以前のタイミングで埋め込みSQLがエラーを起していた場合、
そのエラー情報が保持されているからです。

データウィンドウの処理は、関数の戻り値やイベント引数などを使って判定するようにしましょう。

付加情報:

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.