转换 - > numrows用于Perl中的DBD :: mysql

时间:2016-07-20 08:31:12

标签: mysql perl dbd

我有一些旧代码使用Perl中的旧Mysql库。

大部分时间更新代码以使用DBD::mysql而不是没有问题,但是我遇到了->numrows不起作用的问题。

使用DBD::mysql

时,我该怎么做才能获得相同的功能

使用Mysql

use Mysql;

$type = "yellow";

$statement = "select name from customer where type = '$type'";

$sth = $dbh->query($statement);

if ($sth->numrows) {
  print "Success!"; # This does work.
}

使用DBD :: mysql

use DBI;
use DBD::mysql;

$type = "yellow";

$statement = "select name from customer where type = ?";

$sth = $dbh->prepare($statement);
$sth->execute($type);

if ($sth->numrows) {
  print "Success!"; # This doesn't work.
}

这是我回来的错误:

tail /var/log/apache2/error.log

 Can't locate object method "numrows" via package "DBI::st"

1 个答案:

答案 0 :(得分:0)

我认为你应该使用它如下

if ($sth->rows)