[前][次][番号順一覧][スレッド一覧]

mysql:4470

From: "Kawai,Takanori" <"Kawai,Takanori" <GCD00051@xxxxxxxxxx>>
Date: Fri, 12 Oct 2001 12:24:33 +0900
Subject: [mysql 04470] Re: ステートメントハンドル属性取得

川合孝典です。

----- Original Message ----- 
From: "mino" <mysql@xxxxxxxxxx>
To: <ml@xxxxxxxxxx>
Sent: Friday, October 12, 2001 11:26 AM
Subject: [mysql 04468] Re: ステートメントハンドル属性取得


> 宮川様。早々のアドバイス、ありがとう御座いました。
> 
> おかげさまで、バッチリOKでした。
というのは、
> > while (defined ($value = $sth->fetchrow_array) {
ということでしょうか?

私の環境でDESCすると末尾がPrivilegesになるので直接は確認
できなかったのですが。元の原因は
  $value = $sth->fetchrow_array
で末尾にあるExtraの値が’’だったことでしょう。
今回の場合には、これで問題は解決できるとは思いますが、
末尾の項目がNULLを示すundefの場合には区別できません。
宮川さんの書かれている通り、fetchrow_arrayrefなど他の方法を
利用するか、リストコンテキストとして、

    my @aRes;
    while(@aRes=$sth->fetchrow_array()) {
        print $aRes[-1], "\n";
    }

のようにしたほうがよいでしょう。

PS.
DBIのドキュメントには
<引用>
In a scalar context, fetchrow_array returns the value of 
the first field. 
</引用>

ウーン、最後のような気がとってもするぞぉ。
===================================================
川合 孝典 (Hippo2000)
   DBI日本語メーリングリスト管理人、Kansai.pm所属
   kwitknr@xxxxxxxxxx GCD00051@xxxxxxxxxx
   http://member.nifty.ne.jp/hippo2000
   http://www.hippo2000.net/
===================================================


[前][次][番号順一覧][スレッド一覧]

      4460 2001-10-11 19:07 ["mino" <mysql@xxxxxx] ステートメントハンドル属性取得          
      4461 2001-10-11 19:09 ┣[KOBAYASI Hiroyuki <k]                                       
      4462 2001-10-11 19:10 ┗[Tatsuhiko Miyagawa <]                                       
      4465 2001-10-12 10:36  ┗["mino" <mysql@xxxxxx]                                     
      4466 2001-10-12 10:51   ┗[Tatsuhiko Miyagawa <]                                   
      4467 2001-10-12 10:53    ┗[Tatsuhiko Miyagawa <]                                 
      4468 2001-10-12 11:26     ┗["mino" <mysql@xxxxxx]                               
->    4470 2001-10-12 12:24      ┗["Kawai,Takanori" <GC]