in reply to Determining if a DBI SELECT comes back empty

There is no DBI method that will reliably give you a count of the number of rows fetched. Two things I can think of to do:
1. if you intend to process all the rows of your original fetch anyway, then just count the rows as you process them - that is *the* most reliable way to get a count of rows fetched. 2. use the 'count(*)' which will retrieve one column(that being the number of rows fetched), and in this example I assigned the count to alias 'count': $dbh->{RaiseError} = 1; # save having to check each method call my $sql = qq{ SELECT count(*) as count FROM your_table WHERE one_of_the_columns = something }; my $sth = $dbh->prepare($sql); $sth->execute; my ($count) = $sth->fetchrow_array; if ($count == 0) { print "NO rows fetched!\n"; }
HTH.