Просмотр поста

.
AlkatraZ
╭∩╮ (`-`) ╭∩╮
# ДоХтор (24.02.2017 / 08:33)
Так почему ты предпочёл $db->exec вместо $db->query?
В принципе может показаться, что к примеру для INSERT и UPDATE применение ->query и ->exec монопенисуально.
Однако, если внисмательно вчитаться в мануал по PDO, мы видим следующее:

PDO::exec — Запускает SQL запрос на выполнение и возвращает количество строк, задействованных в ходе его выполнения

PDO::query — Выполняет SQL запрос и возвращает результирующий набор в виде объекта PDOStatement

То есть, в случае PDO::query еще и дергается немаленький класс, который занимает место в памяти и в целом расходует пусть мизерные, но ресурсы. А если нам не нужен результирующий набор данных (например в случае INSERT, UPDATE, DELETE), то зачем расходовать лишние ресурсы и дергать не нужный нам класс? ->exec() получается экономнее. К тому же, по его результату можно выводить "вставлено Х записей", "удалено ХХХ записей" и тому подобное...