> -----Original Message-----
> From: Scott Taylor [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, July 18, 2002 5:08 PM
> To: [EMAIL PROTECTED]
> Subject: populating hash from DBI
> 
> 
> Hello,
> 
> I'm having a heck of a time populating a hash from an SQL statement.
> 
> Here is what I have so far (which doesn't work of course)
> 
> my $SQL = qq[SELECT triid, numlegs from tri_id];
> 
> my $sth = $dbh->prepare($SQL);
> $sth->execute;
> 
> no warnings 'uninitialized';
> my %numlegs;
> 
> while ( %numlegs = $sth->fetchrow ){};
> 
> That last line was the last straw, I tried every other way I 
> could think 
> of, and I can't find anything in perldocs about it either.
> 
> Can anyone show me how to fix that last line to make it 
> populate the hash, 
> column[1]=>column[2].

Each pass through the loop overwrites %numlegs, so it will only 
contain one entry, corresponding to the last row.

You can do something like this:

   while (my $a = $sth->fetchrow_arrayref) {
      $numlegs{$a->[0]} = $numlegs{$a->[1]};
   }


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to