Выполнить запрос
Назначение
Подготовка и выполнение SQL-оператора.
Синтаксические правила
PDOStatement PDO::query (string statement);
statement-
SQL-оператор для подготовки и последующего немедленного выполнения.
Описание
Функция выполняет SQL-оператор и возвращает результирующую выборку данных (если она не пуста) как PDOStatement объект.
В случае если подается запрос на исполнение хранимой процедуры вида 'execute/call <procedure_name>' и процедура в качестве результата возвращает курсор, то функция PDO::query также возвращает результирующую выборку в виде объекта PDOStatement, по которой аналогичным образом осуществляется проход при помощи функций по выборке данных (например, PDOStatement::fetch).
Если данный SQL-оператор должен выполняться многократно (с различными значениями одних и тех же параметров) лучше один раз его подготовить к выполнению (с помощью функции PDO::prepare) и затем периодически использовать функцию PDOStatement::execute.
Перед очередным вызовом функции PDO::query с поисковым SQL-оператором предыдущая результирующая выборка данных должна быть обработана полностью (т.е. все строки ответа должны быть извлечены клиентским приложением из выборки), в противном случае необходимо использовать функцию PDOStatement::closeCursor для освобождения ресурсов, выделенных для хранения строк ответа предыдущей выборки
Возвращаемое значение
Результаты поискового запроса в виде PDOStatement-объект.
Пример
<?php
function getFruit($conn) {
$sql = 'SELECT make, model FROM auto limit 3';
foreach ($conn->query($sql) as $row) {
print $row['MAKE'] . "\t";
print $row['MODEL'] . "\n";
}
}
?>
Результат выполнения данного примера:
FORD MERCURY COMET GT V8 ALPINE A-310 AMERICAN MOTORS MATADOR STATION