現在『Delphi2005 Ent』で『Oracle 8.1.7』に『BDE』を使用して接続しています。
この度データベースを『Oracle 10g』に変更するに伴い『BDE』を止めようと思っています。『BDE』は早くて気にっていたのですが、そろそろ潮時かと・・・
それで色々接続方法を調べてみましたが、パフォーマンス的にどの接続方法がお勧めでしょうか?
今考えているのが『OO4O』と『DOA』です。その他、パフォーマンス重視で良い接続方法があれば教えて下さい。
あまり詳しくないのですが
OO4OではDbGridなどのコンポーネントが使えないと思いますよ。
DOAかdbExpressだと思います。
ありがとうございます。
『dbExpress』や『ADO』も検討したのですが、他スレを見るとあまりお勧めでなさそうだったので検討していません。DBコンポーネントは使用するつもりはなく、ただデータの読み書きが出来ればOKです。
DOAは『http://www.teppi.com/Components/DOA』こちらでしか手に入らないのでしょうか?また、この接続方法は自作は不可能なのでしょうか?
> 他スレを見るとあまりお勧めでなさそうだったので
dbExpressでもパフォーマンスは悪くないと思います。
ただしボーランド製のドライバの出来栄えが今ひとつなので、
サードパーティ製ドライバを購入した方が無難です。1万円位だったと思います。
> DOAは『http://www.teppi.com/Components/DOA』こちらでしか手に入らないのでしょうか?
http://www.allroundautomations.com/の製品です。
> 他スレを見るとあまりお勧めでなさそうだったので検討していません。
お勧めできないという事は無いと思います。一長一短です。
サンプル・プログラムを作って、いろいろ試してみると良いです。
ありがとうございます。
『dbExpress』でも試してみましたが、パフォーマンス的には悪くなかったです。ドライバの出来が悪いと言う事ですが、Oracle接続的には問題なさそうですが、色々使用しているとエラーなどが頻繁するのでしょうか?
『oo4o』ではBLOBデータ取得が上手くいかず断念しました。『dbExpress』でいってみたいと思います。
> 色々使用しているとエラーなどが頻繁するのでしょうか?
頻発という事はありませんがDelphi-MLで報告されているように([Delphi:85585] dbExpressでOracleのCLOBを読む方法)細かい所が駄目です。
ありがとうございます。CLOBデータは扱ってませんし、今のところ問題なく動いております。パフォーマンスも良いです。ただトランザクション処理でBDE時より少々戸惑っております。TTransactionDescがマニュアルを読んでも理解できないのでデフォルトのまま使用しております。複数のトランザクションを処理しているのでID管理が大変ですが。
編集 削除