Perl dbi sqlite’select * ..’只返回第一个elem

前端之家收集整理的这篇文章主要介绍了Perl dbi sqlite’select * ..’只返回第一个elem前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有一个perl dbi sqlite的问题.

我已经设置了一个数据库(并使用sqlite命令行进行了检查).
现在我想搜索这个无效的数据库.

所以我试着做一个’SELECT *’
这只会打印数据库中的第一个元素,但不会打印此表中的所有内容.

我认为导致select *失败的错误是相同的,这使我无法使用“喜欢%..%”的东西.

这是相关的代码,如果代码是正确的,数据库表似乎还有什么可能导致问题?

my $dbh = DBI->connect("dbi:sqlite:dbname=$dbfile","","") || die "Cannot connect: $DBI::errstr";

my $sth = $dbh->prepare('SELECT * FROM words');
$sth->execute;
my @result = $sth->fetchrow_array();


foreach( @result) {
    print $_;
}

解决方法

fetchrow_array()只获取一行.

尝试

while ( my @row = $sth->fetchrow_array ) {
  print "@row\n";
}

猜你在找的Perl相关文章