Выполнить запрос

Назначение

Подготовка и выполнение 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