On Monday, October 22, 2001, at 01:32 PM, Wiedmann, Jochen wrote:

>
>> no, what I am saying is that I could not look at the DBI.pm
>> source code
>> and find a fetchrow_hashref anywhere, although I wanted to
>> look at such
>> a function so that I could answer this question myself.
>
> Most of DBI is written in C. However, fetchrow_hashref is
> one of the exceptions, see line 1083 of DBI.pm. It's fairly
> simple.
>
I did look at line 1083 and the definition of fetchrow_hashref is not 
there. In fact I search for fetchrow_hashref all throughout DBI.pm and 
the results show no "sub fetchrow_hashref"

    55:  $hash_ref = $sth->fetchrow_hashref;
   316:  fetchrow_hashref  => undef,
   968:    sub selectrow_hashref {  return 
_do_selectrow('fetchrow_hashref',  @_\
); }
  1184:          while ($row = $sth->fetchrow_hashref('NAME_lc')) {
  1192:          push @rows, $row while ($row = $sth->fetchrow_hashref());
  1213:  while (my $row = $sth->fetchrow_hashref($hash_key_name)) {
  2194:fetchrow_hashref() method should use to get the field names for the
  2415:C<fetchrow_hashref>.
  2421:If any method except C<fetchrow_hashref> fails, and L</RaiseError> 
is not\
  set,
  2422:C<selectall_hashref> will return C<undef>.  If C<fetchrow_hashref> 
fails \
and
  3432:=item C<fetchrow_hashref>
  3434: $hash_ref = $sth->fetchrow_hashref;
  3435: $hash_ref = $sth->fetchrow_hashref($name);
  3441:If there are no more rows or if an error occurs, then 
C<fetchrow_hashref>
  3454:Because of the extra work C<fetchrow_hashref> and Perl have to 
perform, i\
t
  3486:When passed a hash reference, C<fetchall_arrayref> uses 
L</fetchrow_hashr\
ef>
  3488:fetchrow_hashref is simply called in a tight loop and the keys in 
the has\
hes
  3489:have whatever name lettercase is returned by default from 
fetchrow_hashre\
f.

Reply via email to