SELECT $sth = $dbh->prepare('SELECT id, name, age FROM t1 WHERE age > ?'); $sth->execute(15); while ($row = $sth->fetchrow_hashref()){ print $row->{id},"\n"; print $row->{name},"\n"; } die $sth->errstr if $sth->err; fetchrow_xxx()が途中でエラーを起こした場合、返値がundefなためwhile()ループを抜ける。 全行走査できたのかエラーだったのか調べるためには、 $sth->errを使うか、 RaiseErrorで例外をキャッチする。 selectxxx_xxx系 (prepare()を経ずに)SQLを直接実行する。 1行を取得 $row = $dbh->sele