[pgsql-jp: 25733] Re: PHP からのSELECT実行結果について

yasushi,m mll @ jbms.co.jp
2002年 4月 26日 (金) 12:30:02 JST


返信有り難うございます。


>正しく意図したSQLがPostgreSQLに渡っているかがこれで確認できます。
>PostgreSQLからメッセージが出ていれば、何が問題だかわかるでしょう。
>
>$sql = "SELECT sum(shiplate) FROM stock_tb WHERE user_id=1;";
$result = pg_exec($CONN,$sql); //ここでは、エラーが出ていません。
$ROWS = pg_numrows($result);   //ここでも同様にエラーは出ません
$shiplate = pg_result($result,0,sum) ; //ここでエラーが出ます。
内容
"Unable to jump to row 0 on PostgresSQL result index 37 in..."

echo $sql ;    //としてみたところ
"SELECT sum(shiplate) FROM stock_tb WHERE user_id=1;" 
と、同じ記述で返ってきます。

>私が想像するに、パーミッションの問題のような気がするんですが...
>
\dp stock_tb {"=","postgres=arwR","nobody=arwR"}
なので、パーミッションも問題ないようなのですが..

ちょっと気になることが..
この症状を検証中に、psqlでsqlを実行したとき、結果として
これが正解だと思うんですが
  sum
-------
 24000
(1 row)

ここだけしか、表示されない現象がありました。
 24000

psqlを、\qで抜けてから、再度実行すると、通常に戻ったので
あまり気にしていなかったのですが?
何か関係があるんでしょうか?



pgsql-jp メーリングリストの案内