[PHP-users 9841] Re: 他のサーバーにある DB に接続することは可能ですか?

Yasunori KAKU php-users@php.gr.jp
Fri, 06 Sep 2002 17:07:25 +0900


角@ぺしぇるーな・こむ です。

> そこでBサーバー上のPHPからodbc関数にて接続を試みたところ、求める結果がか
> えりません。

非常に素朴な疑問なのですが、
なぜOracle関数を使用せず、ODBC関数なのでしょう?
OCIを使う方が良いと思いますが。

それはさておき・・・

> <?php
> $hDB = odbc_connect("dsn","user","password");
> $res = odbc_exec($hDB,"select * from table1");
> $row = odbc_num_rows($res);
> $rfw = odbc_num_fields($res);
> ?>
> 
> <? echo($row); ?>
> の結果は"-1"、
> <? echo($rfw); ?>
> の結果は"8"、
> といった結果でカラム数は合っているのですが、レコード数がかえらないのです。
> 
> 御教授お願いします。


odbc_num_rowsの戻り値が-1ということは、
PHPのマニュアルにもあるように、
http://www.php.net/manual/ja/function.odbc-num-rows.php

「注意: SELECT の後に利用可能な行の数を定義するために 
 odbc_num_rows()を使用した場合、 多くのドライバにおいて、
 -1が返されます。」

という事なのではないですか?


角 泰徳 <Yasunori KAKU>
HP-URL : http://www.pesceluna.com/
E-Mail : ykaku@pesceluna.com