Can't locate object method "selectall_hashref" via package "DBI::db" at test line 5. #### sub selectall_hashref_byid { my ($table) = shift; my ($select); if (scalar(@_) == 1) { # Single key to fetch, so no HoH return { @{$db->selectall_arrayref("SELECT id,? FROM $_", $_[0])} }; } if (@_) { unshift (@_, 'id') unless (@_ && grep ("id", @_)); } else { @_ = ('*'); } my ($hash, $row, $query); $hash = {}; $query = $db->prepare ("SELECT ".join (',', @_)." FROM $table"); $query->execute (); while (my $row = $query->fetchrow_hashref) { # Stoke it $hash->{$row->{id}} = $row; # Deredundantize it delete $hash->{$row->{id}}->{id}; } return $hash; }