【发布时间】:2015-12-11 08:11:52
【问题描述】:
这个isdb连接,
$DBH = DBI->connect("dbi:mysql:$DATABASE","$USER","$PASS",{ RaiseError => 1, AutoCommit => 1 }) or die "Connection Error: $DBI::errstr\n";
以及下面的代码,
$sth=$DBH->prepare("DELETE FROM sample where id=1 ") or warn $DBH->errstr;
$sth->execute or die "can't execute the query: $sth->errstr";
while(@row = $sth->fetchrow_array()){
$count+=$sth->rows;
}
上面的代码给了我错误,
DBD::mysql::st fetchrow_array 失败:fetch() without execute()..
但是,当我使用 select * from sample where id=1 时,它会运行。它只给我delete statement 的错误。为什么这样?
帮助 !谢谢!
【问题讨论】:
-
delete语句不返回任何行。它只返回它已删除的行数。 -
@Tensibai 我们可以计算删除的行数
-
尝试搜索文档,我没有做 perl 但我在 DBI 文档中找到了this。