verificando se a consulta SQL foi excluída no DOP [duplicado]

Esta pergunta já tem uma resposta aqui:

Como verifico a consulta db retornou resultados usando o PDO do PHP 3 respostas

no mysql_query, podemos verificar se a consulta foi executada ou não, fazendo o seguinte:

$query = $yourdbconnection->fetch_array(mysql_query("SELECT * FROM tbl_name"));
if ($query){ // query is working }
else { // query is not working }

na DOP, estou fazendo algo assim:

$query = $yourdbconnection->query("SELECT * FROM tbl_name");
$fetchquery = $query->fetchAll();
if ($fetchquery) { // query is working}
else { // query not working}

O meu código é eficaz? o que exatamente oif declaração fazendo? Está fazendo a mesma coisa quemysql_query estava fazendo? Como posso verificar se a consulta está retornando 0 linhas ou não?

[EDITAR

Encontrei essas soluções como uma solução alternativa para o problema

using$stmt->fetch()

prepare ($ sql); $ stmt-> execute ();
if ($data = $stmt->fetch()) {
    do {
        echo $data['model'] . '<br>';
    } while ($data = $stmt->fetch());
} else {
    echo 'Empty Query';}
?>

adicionando outra consulta para contar o número de linhas, consulteesta resposta

No entanto, ainda estou procurando por melhores soluções

questionAnswers(2)

yourAnswerToTheQuestion