Direct Oracle Accessの概要

紹介記事はこちら
です

概要

  • WindowsおよびLinux 上のクライアントソフトウェアから、OracleのネイティブAPIであるOCIを直接利用できます
  • DBクライアント開発に最適なRAD環境であるDelphiから、OCIの機能をフルに利用可能です

対応環境

こちら
をご覧下さい

Delphi体験版および、Personal版ではご利用いただけません。

アプリケーション導入

  • DOAは、Borland Database Engine を一切必要としないため、各クライアントマシンへのBDEのインストールや、データベースエリアスの作成が不要になります
  • DOAのライブラリは、ターゲットアプリケーションの実行形式ファイル(*.EXEファイル)に静的にリンク可能。アプリケーションの配布は、簡単なアプリケーションの場合、実行形式ファイル一つだけで済みます。

Oracleの機能をフル活用

  • アプリケーションプログラムから、PL/SQLブロックをサーバに渡して実行可能。SQL*Plusで出来ることは、ほとんど何でもアプリケーションから出来ます
  • SELECT文の結果およびPL/SQLプロシージャの返すカーソルを、Delphi標準のTDataSetとしてアクセス可能。DBGridや、DBEditなどのデータベース対応コントロールをフルに活用できます
  • Oracle8で導入されたCLOB/BLOB/BFile型を完全にサポート(ただし、TDataSet互換モードでは大きく制限が課せられます)
  • Oracle制約のチェック結果をユーザに判りやすいメッセージに翻訳できます
  • Oracleの標準パッケージ(dbms_output, dbms_alert, dbms_job …)を利用するためのラッパークラスが利用可能
  • トランザクションのCommit/Rollbackは言うまでもなく、SavePointの利用や、トランザクションのIsolation Levelの変更なども可能
  • ORACLE8のObject拡張機能をTOracleObjectクラスと、TOracleReferenceクラスを通じて利用可能(Object Versionのみ)
  • 新規挿入レコードのキー値をOracleシーケンスから自動取得できます。Master/Detail関係にも対応。

パフォーマンス

  • 直接OCIをコールするため、BDEを経由した場合に比べ、クエリ実行で最大5倍~10倍のパフォーマンスが得られます
  • 複数レコードのInsert/Delete/Updateを、1回の通信で行う、Array DML 機能
  • 大量データのテーブルへの挿入を高速で行う、Direct Path Loading (SQL*Loaderと同じAPIを利用)
  • BDEに頼らない安定したCachedUpdates機能

導入実績

  • DOAは、アメリカ、ヨーロッパを中心に1,000を越える顧客に導入されており、DelphiでOracleに接続するためのBDE Alternative(BDE代替技術)のデファクトスタンダードであるといえます
  • 日本国内でも、好評のうちにすでに100以上のお客様が導入されています