ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

データベース(Oracle)に接続する(OLE DB を使用)

      2017/09/28

OLE DB プロバイダ

OLE DBには、Oracle 提供の Oracle Provider for OLE DB と Microsoft 提供の OLE DB Provider for Oracle の2種類があります。いずれの場合も ADO を使用してプログラムが可能です。
また、OLE DB の他に、ODBCoo4o といったミドルウェアがあります。


Oracle Provider for OLE DB

Oracle に接続するには、Oracle Client が必要です。
ADO で接続するには Open メソッドConnectionString プロパティ に、OraOLEDB.Oracle という文字列を使用します。

接続文字列パラメータ


【ConnectionString(ADO)に設定する文字列】

<tnsnames.ora ファイルを使用する場合>
Provider = OraOLEDB.Oracle;
Data Source = ServerName;
User ID = UserName;
Password = UserPassword;

<tnsnames.ora ファイルを使用せず直接指定する場合>
Provider = OraOLEDB.Oracle;
Data Source = StrDataSource;
User ID = UserName;
Password = UserPassword;


引数・戻り値

  • ServerName  ・・・  tnsnames.ora ファイルのネットサービス名を指定します。
  • UserName  ・・・  ユーザー名を指定します。
  • UserPassword  ・・・  パスワードを指定します。
  • StrDataSource  ・・・  tnsnames.ora ファイルの内容をそのまま記述します。

  • <tnsnames.ora ファイル>
    ora ファイル

ADO に関しては データベース(Access 等)に接続(ADO) を参照して下さい。



データベース(Oracle)へ接続する例(Oracle OLE DB を使用)

サンプルVBAソース1



Microsoft OLE DB Provider for ODBC

Oracle に接続するには、Oracle Client が必要です。
ADO で接続するには Open メソッドConnectionString プロパティ に、MSDAORA という文字列を使用します。

接続文字列パラメータ


【ConnectionString(ADO)に設定する文字列】

<tnsnames.ora ファイルを使用する場合>
Provider = MSDAORA;
Data Source = ServerName;
User ID = UserName;
Password = UserPassword;

<tnsnames.ora ファイルを使用せず直接指定する場合>
Provider = MSDAORA;
Data Source = StrDataSource;
User ID = UserName;
Password = UserPassword;


引数・戻り値

  • ServerName  ・・・  tnsnames.ora ファイルのネットサービス名を指定します。
  • UserName  ・・・  ユーザー名を指定します。
  • UserPassword  ・・・  パスワードを指定します。
  • StrDataSource  ・・・  tnsnames.ora ファイルの内容をそのまま記述します。


データベース(Oracle)へ接続する例(Microsoft OLE DB を使用)

サンプルVBAソース 2


実行結果

oracle 接続結果



 - データベース , , , , , , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

ado Field オブジェクト
フィールド名(ADO)Field オブジェクト

Field オブジェクト Recordset オブジェクト内の列(フィールド)を …

ADOX インデックスを作成する1
インデックス、プロパティの設定(ADOX)

インデックスを作成する index オブジェクト 【書式】 <CreateObj …

Oracle(oo4o)接続サンプル1
データベース(Oracle)に接続する(oo4o)

oo4o 接続 OO4O(Oracle Objects for OLE)はWin …

Parameters.Refresh エラー
クエリにパラメータを渡して結果を取得する(ADO)Command オブジェクト・Execute メソッド

クエリにパラメータを渡して結果を取得する手順 Command オブジェクトの作成 …

RecordCount プロパティ(ADO)
Recordset オブジェクト内のレコード数(ADO)RecordCount プロパティ

RecordCount プロパティ Recordset オブジェクトのレコード数 …

ADOX テーブル名・クエリ名を取得
テーブル名、クエリ名の取得(ADOX)

テーブル名の取得 Table.Type プロパティ 【書式】 <取得> obje …

Recordsetオブジェクト内のカーソル移動
カレントレコードの移動(ADO)MoveFirst、MoveLast、MoveNext、MovePrevious、Move

MoveFirst メソッド、MoveLast メソッド、MoveNext メソ …

Excelに接続する(ADO)
Excelファイルに接続(ADO)

ADOでExcelファイルに接続 ADO を使用してExcelファイルを読み込み …

データベース(MySQL)接続
データベース(MySQL)に接続する(ADO)

MySQL ODBCドライバ Windowsには標準で、いくつかの ODBC ド …

Sort プロパティ(ADO)
レコードを並べ替える(ADO)Sort プロパティ

データベースのレコードを並べ替える Sort プロパティ 【書式】 object …