TESTSQLSTATE

SQL 文の実行後に SQLCODE でなく SQLSTATE をテストするコードを生成するように、OpenESQL に指示します。

構文:

TESTSQLSTATE
NOTESTSQLSTATE

プロパティ:

省略値: NOTESTSQLSTATE

範囲:

コンパイル時の使用: あり
ランタイムの動作: N/A

詳細については、『範囲 - OpenESQL SQL コンパイラ指令オプション』を参照してください。

例:

           invoke wCLRRTS "adoastop" using
               by reference SQLCA
           move SQLCA(13:4) to MFSQLECM-SQLCODE-2(1:4)
           move SQLCA(101:1) to MFSQLECM-SQLWARN
           move SQLCA(132:2) to MFSQLECM-SQLSTATE-2
           perform MFSQLECM-UPD-SQLCA-2
           if MFSQLECM-SQLSTATE-2 not = "00" and MFSQLECM-SQLSTATE-2 not
      -        = "01" and MFSQLECM-SQLSTATE-2 not = "02"
               go to SQL-ERROR
           end-if
           if MFSQLECM-SQLCODE-2 > 0 and MFSQLECM-SQLCODE-2 not = 100
               move "W" to MFSQLECM-SQLWARN
           else
               if MFSQLECM-SQLCODE-2 not = 0
                   move " " to MFSQLECM-SQLWARN
               end-if
           end-if
           if MFSQLECM-SQLSTATE-2 = "01"
               go to SQL-ERROR
           end-if