ヘッダーをスキップ
Oracle® Objects for OLE開発者ガイド
11gリリース2 (11.2) for Microsoft Windows
B58887-04
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

LastServerErrプロパティ

説明

指定したオブジェクトに対してOracle Databaseファンクションによって生成された、ゼロ以外の最後のエラー・コードを戻します。設計時には使用できません。実行時は読取り専用です。

使用方法

error_number = oradatabase.LastServerErr
error_number = orasession.LastServerErr

データ型

Long Integer

備考

このプロパティは、Oracle Call Interface(OCI)データベース・ファンクションからのゼロ以外の最後の戻り値を表し、最後のLastServerErrReset要求以降エラーが発生していない場合はゼロになります。効率化のためにゼロ以外の戻り値のみが戻されるため、ゼロ以外の値であっても、必ずしも、直近にコールされたOCIデータベース・ファンションでエラーが発生したというわけではありません(戻り値ゼロはLastServerErrメソッドによって戻されないため)。

  • Orasession.LastServerErr

    OpenDatabaseBeginTransCommitTransRollbackおよびResetTransメソッドでのエラーなど、接続に関連するすべてのエラーを戻します。

  • Oradatabase.LastServerErr

    ダイナセットやExecuteSQLメソッドでのエラーなど、Oracleカーソルに関連するすべてのエラーを戻します。

この例では、LastServerErrおよびLastServerErrTextプロパティを使用して、CreateDynasetメソッドの使用時にOracleエラーが発生したかどうかを判断し、各エラー・メッセージを表示する方法を示します。このコードをコピーして、フォームの定義セクションに貼り付けてください。次に[F5]を押します。

Sub Form_Load ()
 
 'Declare variables as OLE Objects.
 Dim OraSession As OraSession 
 Dim OraDatabase As OraDatabase 
 Dim OraDynaset As OraDynaset 
 
 'Create the OraSession Object.
 Set OraSession = CreateObject("OracleInProcServer.XOraSession")
 
 'Set up an error handler.
 On Error GoTo errhandler 
 
 'Create the OraDatabase Object by opening a connection to Oracle.
 Set OraDatabase = OraSession.OpenDatabase("ExampleDb", "scott/tiger", 0&)
 
 'Attempt to Create the OraDynaset Object.
 'Notice that the FROM keyword is missing from the SQL statement.
 Set OraDynaset = OraDatabase.CreateDynaset("select * emp", 0&)
 
Exit Sub
 
errhandler: 
 
 'Check to see if an Oracle error has occurred.
 If OraDatabase.LastServerErr <> 0 Then
  MsgBox OraDatabase.LastServerErrText
 Else 'Must be some non-Oracle error
  MsgBox "VB:" & Err & " " & Error(Err)
 End If
 
 Exit Sub
 
End Sub