DBI::st=HASH()->_prepare(...): параметр атрибута не является хешем - Perl
Я начинаю в Perl, и у меня есть эта проблема:
my $query = qq {select a1, count(b2), c3 from tab where d1 = ? group by a1, c3 };
my $res = $dbh->selectall_hashref( $query,{ Slice => {} }, $id->[0]);
При выполнении кода я получаю:
DBI::st=HASH()->_prepare(...): attribute parameter is not a hash at /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/DBD/mysql.pm line 224.
Я что-то не так делаю?
Спасибо за внимание.
2 ответа
Решение
Пытаться
my $query = "select a1, count(b2), c3 from tab where d1 = ? group by a1, c3";
my $res = $dbh->prepare($query) or die("cannot prepeare");
$res->execute('10');
У меня такое чувство, что вы хотите использовать selectall_arrayref. selectall_hashref принимает дополнительный параметр (между SQL и атрибутами), указывающий, какое поле следует использовать в качестве ключа хеша в возвращаемом хеше.