Perl:如何在不使用max(rowid)的情况下查找sql​​ite数据库中的总行数?

时间:2017-12-10 21:26:06

标签: perl sqlite

我想找出SQLITE数据库表中的行数,我知道我可以使用SELECT COUNT(*) FROM TABLENAME;进行查询 但我想使用perl代码获取计数并将其存储到变量中?我可以使用以下代码

my $stmt = qq(SELECT COUNT(*) AS $NUMBEROFROWS FROM TABLENAME)
$rv = $dbh->do($stmt);

OR

my $stmt = qq(SELECT COUNT(*) FROM TABLENAME
              $NUMBEROFROWS = COUNT(*)      );
$rv = $dbh->do($stmt);

请建议我如何计算SQLITE数据库表中的行数并将值存储到变量中?

TIA

1 个答案:

答案 0 :(得分:6)

Perl变量不是SQL的一部分,您从数据库中获取数字并在Perl中填充变量:

my ($count) = $dbh->selectrow_array('SELECT COUNT(1) FROM information');
print "$count\n";