David Gray,
    Thanks for the input. Below is another realization using a pseudohash.
Some of the code (print stmts at the end)
is there to demonstrate concepts (the way your post did).

my $sql = "select methodid, method, sname from method order by methodid";
my $sth = $dbh->prepare($sql) or die "Prepare fails for
stmt:\n\t\t$sql\nError = ", $DBI::errstr;
my $rv;
unless ($sth->execute) {
 print"\n\tExecute fails for stmt:\n\t\t$sql\nError = ", $DBI::errstr;
 $sth->finish;
 $dbh->disconnect;
 die "\n\t\tClean up finished\n";
}
print "\t\t$rv\n\n" if $rv;
my %row_ary;
my $row_ary;
my $key;
my $i = 0;
my @array_of_Hrefs;
my $href;

# The select * from method (above)
# and the while loop puts the contents of the
# method table into a hash whose key is the
# column name and value is the column contents

while ($row_ary  = $sth->fetchrow_hashref) {
 $array_of_Hrefs[$i++] = $row_ary;
}

$sth->finish;
$dbh->disconnect;
$i = 0;
# see Programming Perl page 255
my $phash = \@array_of_Hrefs;

for(my $j = 0;$j < 12;$j++) {
 print "\n\t\t\t\$j = $j\n\tKey\t\tValue\n";
 foreach $key ('methodid', 'method', 'sname' ) {
  print"\t$key \t\t$phash->[$j]{$key}";
  print"\n";
 }
}

print $phash->[0]{methodid}."\n";
print $phash->[1]{method}."\n";
print $phash->[3]."\n";



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

Reply via email to