[PHP-users 10478] Re: DBクラスのODBC の意味合いについて

Naomasa Numajiri php-users@php.gr.jp
Wed, 02 Oct 2002 20:22:08 +0900


こんばんは

On Wed, 02 Oct 2002 19:53:48 +0900
Suguru Matsushita <staff_matsushita@ewoman.co.jp> wrote:

; こんにちは。松下@世田谷と申します。
; 
; 
; はじめて相談させていただきます。初心者の質問で恐縮なのですが、

謙遜なさることはないと思います。
質問内容/調査内容がちゃんと整理されていると思います。

; 
; 	・PEAR の DB クラスを使って DB2 との接続は可能なのでしょうか?
; 
; 現在の状況として、
; 
; 	・PHP4.2.2 は正しくインストールできている
; 	・PEAR のインストールはしていない (DB クラスはコアパートなので)
; 	・DB2 V7.2 のサーバ側とクライアント側の接続も正常にできている
; 	・ODBC 関数を利用して SQL の投入と結果の取得はできている
; 	・インストールは全てソースから行っている (RPM は使っていない)
; 
; という状況です。つまり、
; 
; 	”PHP4 を利用して遠隔サーバの DB2 にはアクセスできています。”
; 
---中略---
; 
; なお、以下のように ODBC 関数を使うと正常に結果を取得・表示できます。
; 
; <?php
; 

/usr/local/lib/php/DB.php
/usr/local/lib/php/DB/odbc.php
などを見ていただけると分かると思いますが、中ではODBC関数を使っています。
ですので、ODBC関数で問題ないならPEARでもODBC接続でのアクセスはできると
思います。(--prefixオプションでインストール場所を変えていたら、ファイルは
別の場所になります。)

接続の時に、1)接続文字列を解析して、2)対応するクラスを判断し、3)そのクラスの
".php"をinclude(require?)しているだけです。
(昔DB.php,oci.phpをデバッグした時の記憶。うまく動かないので解析して直したら、
 CVSで取得した最新版では直っていたという物語。)

ODBC関数を使い慣れているなら、DB.phpにあるDBクラスのconnect()辺りから
追っていけば原因が分かるのではないかと。

---以降、引用略--
; ?>
; 
; あまり、どうにもならないようであれば、やむなく、標準の ODBC 関数を使って
; 開発を進めることになりますが、できるだけ悪あがきしたいと思っております。
; (多分、DB クラスで DB2 を接続できるような予感はしているのですが)
; 
; どうぞ、よろしくお願い申し上げます。(長文になり失礼いたしました)
; 
; -- 
; <staff_matsushita@ewoman.co.jp>
; 

参考になれば

-- ぬ