проверка, если SQL запрос был выполнен в PDO [дубликат]
На этот вопрос уже есть ответ:
Как я могу проверить возвращенные результаты запроса БД, используя PDO PHP 3 ответаВ mysql_query мы можем проверить, был ли выполнен запрос, выполнив это:
$query = $yourdbconnection->fetch_array(mysql_query("SELECT * FROM tbl_name"));
if ($query){ // query is working }
else { // query is not working }
В PDO я делаю что-то вроде этого:
$query = $yourdbconnection->query("SELECT * FROM tbl_name");
$fetchquery = $query->fetchAll();
if ($fetchquery) { // query is working}
else { // query not working}
Мой код эффективен? что именif
заявление делать? Это делает то же самое, чтоmysql_query
делал? Как я могу проверить, возвращает ли запрос 0 строк или нет?
[РЕДАКТИРОВАТЬ
Я нашел эти решения в качестве обходного пути к проблеме
с помощью$stmt->fetch()
if ($data = $stmt->fetch()) {
do {
echo $data['model'] . '<br>';
} while ($data = $stmt->fetch());
} else {
echo 'Empty Query';}
?>добавив еще один запрос для подсчета количества строк, см. этот ответ
Однако я все еще ищу лучшие решения