- ベストアンサー
実行したSQLの結果を返す方法
VBでSQLを発行、及び実行をし、 MDBを更新する処理を作成しています。 各SQLの実行(SELECT、INSERT、DELETE等)が 成功or失敗したかどうかを判定するには どのようにすれば良いのでしょうか? ソースのイメージとしては↓のような感じです。 Dim db As DAO.Database 'DB設定 Set db = OpenDatabase(DB名) 'SQL実行 db.Execute (DB内で作成したSQL) 【実行したSQLの正常終了の判定】 【実行メッセージ(成功or失敗)出力】
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
On Error GoToを使用すれば、正常・異常の判断出来ます。 例 正常終了した場合、戻り値(True)でリターンされます。 異常終了した場合、ErrEndラベルにジャンプしエラー内容を イミディエイトウインドウに表示し戻り値(False)でリターンされます。 Public Function DBSEL_PROC(SQL As String) As Boolean On Error GoTo ErrEnd 'エラー処理を設定します。 DBSEL_PROC = False '関数の戻り値として異常終了を設定します。 '実行したいSQL文を書く DBSEL_PROC = True '関数の戻り値として正常終了を設定します。 On Error GoTo 0 'エラー処理を無効にします。 Exit Function ErrEnd: '異常終了した場合のエラー内容を表示します。 Debug.Print Err.Description Exit Function End Function
その他の回答 (2)
- TAGOSAKU7
- ベストアンサー率65% (276/422)
何か質問が見えない部分があるのですが・・・ >成功or失敗したかどうかを判定するには とあるけど、もしかして先にお二人が述べているような、エラー処理(On Error)をすでに組み込んでいるのでしょうか? 処理件数=0が失敗ということではないですよね?
- sienna
- ベストアンサー率35% (51/145)
DAOのエラートラップならこちらにのっています。参考まで。 http://homepage2.nifty.com/inform/vbdb/dao_error.htm
お礼
>回答者の方へ ありがとうございました。 解決出来ました!