2014-01-14 5 views
1

Я выполняю простой запрос, без связанных параметров, используя PDO. Я тестировал его непосредственно против моей базы данных, и он выполняет чистоту, возвращая ожидаемые результаты. Однако, когда я подключаю его к моему объекту PDO и вызываю fetchAll(), он возвращает пустой массив.PDO fetchAll() возвращает пустой массив

$query = 'SELECT count(*) as mycount FROM mytable'; 
$mysql = $connection->prepare($query); 
$result = $mysql->fetchAll(); 

print_r($result); 

Ожидаемый результат:

array 
(
    [mycount] => 8 
) 

Фактический результат:

array 
(
) 

Любые идеи, что может быть причиной этого, или как пойти об устранении этого?

ответ

9

Вы подготовили, но не выполнили заявление. Вам нужно

$mysql->execute(); 

первый

+0

Добавление: Если вам не нужно связывать параметры, используйте 'PDO :: query' вместо подготовки заявления ... – deceze

+0

Ненавижу себя прямо сейчас. Благодаря! – Matt

3

Сначала вам нужно:

$mysql->execute(); 

Тогда вы можете

$result = $mysql->fetchAll(); 
Смежные вопросы