TOracleSession component

プロパティ                メソッド                イベント

Top  Previous  Next

Unit

Oracle

説明

このコンポーネントはオラクルデータベースへのリンクです。Logonプロパティ(LogonUsername, LogonPasswordLogonDatabase)を設定したあと、LogOnメソッドを呼び出すかConnected プロパティをTrueに設定することで、データベースへの接続を確立できます。もしエンドユーザーにLogonプロパティを指定させたいなら、TOracleLogonコンポーネントを使うことでユーザーが接続を確立できるようになります。

ToracleSessionはオラクルのデータベースセッションと同等のものなので、トランザクションを制御する必要があります。CommitRollbackメソッドは基本トランザクションの制御に使われます。しかしより洗練されたトランザクション管理のためにSavepointRollbackToSavepointメソッドを使うことも出来ます。SetTransactionメソッドとIsolationLevelプロパティは、セッションに対して見える、他のセッションから変更するデータベースに影響します。(affect which database changes from other sessions are visible to a session.)

セッションレベルにリンクされている他のデータベースアクセスコンポーネントの初期動作に影響する多くのプロパティを設定することが出来ます。NullValueプロパティはnullの値がどのように返されるかを指示します。そしてPreferencesプロパティは、それぞれのプロジェクトに対して設定する多くの設定を含んでいます。

Multi-threaded applicationsを作成する時やDynamic Link Libraries,を使うとき特別な注意が必要です。これらはそれぞれのセクションで述べられています。

標準パッケージのサポート

TOracleSessionコンポーネントはオラクルによって提供されるほとんどの標準パッケージに便利なインターフェイスを提供します:dbms_alert, dbms_application_info, dbms_job, dbms_output, dbms_pipeutl_file. パッケージをカプセル化するプロパティを使って、これらパッケージ内で関数やプロシージャーを呼ぶことが出来ます。

マイクロソフトトランザクションサーバーサポート

TOracleSessionコンポーネントMTSに対するオラクルサービスのサポートを提供します。このサービスはMTSの2つの重要なコンセプトを使えるようになります:リソースプーリングとトランザクション制御。Pooling プロパティにspMTSを設定することにより、物理的データベースセッションはプールされ、それにより複数MTSクライアント間で共有できるようになります。これは並列セッションの数を最小にし、それぞれのクライアント要求が新しいログオンを実行するのを防ぎます。その上、トランザクションはMTSによってより高いレベルで制御され、異機種環境での分散トランザクションすら可能にします。

外部プロシージャーサポート

Oracle8サーバーは、SQLPL/SQLの中からObject PacalC++の関数を呼ぶことの出来る外部プロシージャーサービスを持っています。データベースサーバー上のDLLを通してこれらの関数を可能にします。 これらはもちろんIntel / Windows マシンでなくてはいけません。次のような状況で使い道があります:

w        サーバーとクライアントの両方で実行される必要のあるアプリケーションロジックがある
w        PL/SQL上では遅すぎるアルゴリズムを実装する必要がある
w        PL/SQL内からではアクセスできないサーバー上のサービスにアクセスする必要がある 例えば、ディレクトリ情報、ディスク情報、その他デバイス

ToracleSessionは、外部プロシージャーの呼び出し側としての同じトランザクションとセッションの中からデータベースにアクセスすることが出来るExtProcShareプロシージャーを持ちます。同時にExtProcRaise プロシージャーを通して外部プロシージャー内からオラクルの例外を発生させることが出来ます。さらに、ToracleSessionは外部プロシージャーによって渡されたり返されたりする、ローレベルパラメーターデータ型を変換するための関数を提供します。