Выполнить запрос
Назначение
Подготовка и выполнение 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