DirectORA version 1.3.4.1 2000年3月13日 有限会社 イント・ツーワン 〒157-0067東京都世田谷区喜多見7-27-19 リバーサイド成城パレス1F TEL 03-5494-7100 FAX 03-5494-7101 Email info@int21.co.jp 本ドキュメントは、DirectORA について解説するものです。 本ドキュメントおよび対象となるソフトウェアの内容は予告なく変更される ことがあります。 ●概要 Oracle8 Serverに接続するためのマルチセッション高速ライブラリである。 このライブラリが動作するマシンには、Net8がインストールされており、 Oracle Net8 Easy Configなどでサービス名が設定されている必要がある。 ●特徴 ・他のミドルウェア(Oracle Object for OLEやODBC、OLE DBプロバイダー、 DAO、RDO、ADO)などは一切必要ない。 ・OCI(Oracle Call Interface)をダイレクトに呼び出すので、高速で使用メモリ はきわめて少ない。 ・マルチセッションに対応している。 ・複雑なPL/SQLブロック文やストアードプロシージャを実行できる。 ・バインド変数に対応している。 ●インストール DirectORA.DLL を Regsvr32.exe(通常はWindows\systemディレクトリにある) を使ってレジストリに登録する。 例 c:\windows\system\regsvr32 directora.dll アンインストール時には、Regsvr32.exe に /u オプションを使って登録を 削除する。 例 c:\windows\system\regsvr32 /u directora.dll ●Visual Basicなどから使用するためには 参照設定ダイアログを開き、「DirectORA 1.0 Type Library」にチェックをし、 ボタンを押す。 ●DirectORAで使われるオブジェクト、プロパティ、メソッド ★Ociオブジェクト DirectORAの一番上位のオブジェクト。接続に必要な情報を設定し、セッションを作成する。 Oracle8のマルチセッションに対応している。 Userプロパティ データ型: String型 機能: ユーザー名を指定する。 Passwordプロパティ データ型: String型 機能: パスワードを指定する。 Serverプロパティ データ型: String型 機能: サーバー名を指定する。 Openプロパティ データ型: OciCursor型 機能: 新しいセッションを作成し、対応するOciCursorオブジェクトを返す Version プロパティ データ型: String型 機能: バージョンを得る ★OciCursorオブジェクト OciオブジェクトのOpenメソッドで作成されたセッションに対応するカーソルのオブジェクト。 Fetchプロパティ データ型: Long型 機能: 1行Fetchする。Fetchできたら0以外を返す。 Columnsプロパティ (このオブジェクトのデフォルトプロパティ) データ型: OciColumn オブジェクト型 機能: 取得したロウのコレクション OciColumn オブジェクトを返す。 RowAffectedプロパティ データ型: Long型 機能: 処理されたロウ数。selectの結果ロウ数を示す物ではないので注意。 Parentプロパティ データ型: OCIオブジェクト型 機能: 親のOCIオブジェクトを示す。 Compileメソッド 引数: SQL As String (SQL文の文字列) 戻り値: なし 機能: SQL文をコンパイルする。 Executeメソッド 引数: なし 戻り値: なし 機能: SQL文を実行する。 Bindメソッド 引数: Name As String(バインド変数名), lpvObject As Object(バインドするVisualBasicの変数) 戻り値: なし 機能: 変数をバインドする。 Closeメソッド 引数: なし 戻り値: なし 機能: カーソルを閉じる。 ★OciColumnsコレクション OciColumnオブジェクトのコレクション。Fetchした1行のカラムの集合。 Countプロパティ データ型: Long型 カラムの数を返す。 Itemプロパティ (このオブジェクトのデフォルトプロパティ) データ型: OciColumn型 OciColumnオブジェクトを返す。Item(Index)のような指定も可能。 Parentプロパティ データ型: Object型 親オブジェクトを示す。 ★OciColumnオブジェクト Fetchした行、カラムの内容。 DbTypeプロパティ データ型: Long型 データベースでの型を返す。 IsNullプロパティ データ型: Long型 NULLなら0以外を返す。 Linkプロパティ データ型: Object型 カラムをVisual Basicのコントロールとデータバインドする。仕様上、表示のみに使える。 Bindメソッドを使ってコントロールにバインドする方法の方がよい。 Nameプロパティ データ型: String型 カラム名を返す。 NullOKプロパティ データ型: Long型 NULLを許可するカラムなら0以外を返す。 Parentプロパティ データ型: OciCursor型 親のOciCursorオブジェクトを示す。 Valueプロパティ (このオブジェクトのデフォルトプロパティ) データ型: Variant型 カラムの値。 Commit メソッド 引数: なし 戻り値: なし トランザクションをコミットする。 ★OciDateオブジェクト Bind変数を使ったとき、OciCursor.Bind メソッドの第二引数での受け渡しに使う。 Valueプロパティ(date値) date型でbind可能な変数をこのオブジェクト型で宣言して使う。 ★OciFloatオブジェクト Bind変数を使ったとき、OciCursor.Bind メソッドの第二引数での受け渡しに使う。 Valueプロパティ(float値) float型でbind可能な変数をこのオブジェクト型で宣言して使う。 ★OciIntegerオブジェクト Bind変数を使ったとき、OciCursor.Bind メソッドの第二引数での受け渡しに使う。 Valueプロパティ(integer値) integer型でbind可能な変数をこのオブジェクト型で宣言して使う。 ★OciStringオブジェクト Bind変数を使ったとき、OciCursor.Bind メソッドの第二引数での受け渡しに使う。 Valueプロパティ(文字列値) 文字列(VARCHAR)型でbind可能な変数をこのオブジェクト型で宣言して使う。 ★OciLongStringオブジェクト Bind変数を使ったとき、OciCursor.Bind メソッドの第二引数での受け渡しに使う。 Valueプロパティ(文字列値) 文字列(LONG)型でbind可能な変数をこのオブジェクト型で宣言して使う。。 LONG型(4,000Bytesを越える文字列)を使うときには、このオブジェクト型を使う。 制限事項: 一回の呼び出しにつき、この型のバインド変数は一つしか使えない。 ●履歴 1999/10/3 デモ版公開 1999/10/4 OciColumnsコレクションのParentプロパティをOciCursor型にした。 OciDateオブジェクトのデフォルトプロパティをValueプロパティにした。 1999/10/6 Bind変数でのOciString型のサイズ制限に関連するbugをfixした。 Bindできるサイズが無制限のOciLongStringオブジェクトを追加。 OciDate型が動かないbugをfixした。 2000/2/3 Oracle 8.1.5 クライアントモジュールセットDLLの変更に対応した。 2000/3/9 Version 1.3.4.1 DirectORA本体ならびにOCIのメモリリークのバグに対処。 デバッグコードなどを最適化し、従来に比較して2倍以上の高速化 Versionプロパティを追加 デモ版ダイアログにバージョン情報を表示