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]