@634

oo4o - 接続と切断

Advertisement

接続の手順

まずはじめに OO4O を使用して Oracle サーバへ接続し、ログインします。OO4O では、セッションとデータベースをオブジェクトとして扱います。
Public OraSession As Object   ' セッション
Public OraDatabase As Object  ' データベース

次にセッションの取得を行います。
Set OraSession = CreateObject("OracleInProcServer.XOraSession")

セッションが取得できたらデータベースを取得します。
Set OraDatabase = _
        OraSession.OpenDatabase("データベース", "ユーザー/パスワード", 0)
※この時点でOracleサーバにユーザセッションが生成されます。
以上が接続までの流れです。

接続の確認

実際に、Oracle サーバへ接続されているかどうかをプログラム内で判断したい場合は、データベースオブジェクトの ConnectionOK メソッドを使用します。
if OraDatabase.ConnectionOK
    MsgBox "接続されています。"
else
    MsgBox "接続されていません。"
endif

切断の手順

接続が不要になったら接続の切断処理を行います。OraDatabase には close メソッドが用意されていますが、このメソッドは実際には何も行いません。このメソッドはVisual Basic との互換性のために存在しているだけです。

切断は以下のように行います。
Set OraDatabase = Nothing
Set OraSession = Nothing
セッションオブジェクト、データベースオブジェクトの参照先をなくすことで、自動的に切断処理が行われます。

まとめ

今回のコードをまとめると次のようになります。
Private Sub CommandButton1_Click()

    Dim OraSession As Object
    Dim OraDatabase As Object

    On Error Resume Next
    ' 接続
    Set OraSession = CreateObject("OracleInProcServer.XOraSession")
    Set OraDatabase = _
        OraSession.OpenDatabase("sampleDB", "scott/tiger", 0)
    If Err.Description <> "" Then
        MsgBox Err.Description, vbOKOnly + vbCritical, "接続エラー"
    Else
        MsgBox "接続しました。", vbOKOnly + vbInformation, "接続"
    End If

    ' 解放
    Set OraDatabase = Nothing
    Set OraSession = Nothing

End Sub

Advertisement

ショートカット

634
634ブログ
このカテゴリのトップページに戻る
Incubator(Pukiwiki)
634ラボ
   UIコレクションギャラリー
   ZO-3ジェネレーター

サイト検索


Y!ログール