DBD :: mysql :: st fetchrow_array失败:fetch()没有execute()

bha*_* Bs 7 perl

fetchrow_hashref 工作正常,但当我使用fetchrow_array得到以下错误.

#!/usr/bin/perl

use warnings;
use DBI;

$DB_name    = 'database';
$DB_user    = 'root';
$DB_pwd     = '';
my $dsn = 'dbi:mysql:avm:localhost:3306';

$dbh = DBI->connect($dsn,"$DB_user","$DB_pwd");

print "\nConnection error: $DBI::errstr\n\n";

$sth  = $dbh->prepare("SELECT * FROM tblmanufacturer");
$sth->execute();

while ( ($id,$name) = $sth->fetchrow_array() ) 
{
        print "$id\t\t $name \n";
}

$sth->finish();

$dbh->disconnect();
Run Code Online (Sandbox Code Playgroud)

DBD :: mysql :: st fetchrow_array失败:fetch()没有执行()

mmr*_*tnt 5

我总是在“执行”和“准备”时出现错误时使用“死”。

$sql = $dbh->prepare( $query ) or die "Unable to prepare $query" . $dbh->errstr;
$sql->execute() or die "Unable to execute '$query'.  " . $sql->errstr;
Run Code Online (Sandbox Code Playgroud)


dla*_*tte 3

execute()检查and/or的返回值print "$DBI::errstr\n\n"并查看执行是否失败。

print $sth->execute(),"\n";
Run Code Online (Sandbox Code Playgroud)