|
|
|
| Доброго времени суток. Возможно, этот вопрос более уместен в форуме PHP, но я по привычке, задаю его здесь.
Итак, есть хранимая процедура, которая возвращает несколько результирующих таблиц. В командной строке все работает нормально, также все отлично работает через MYSQLI (multi_query и next_result)... А вот с PDO не работает (((((( Пошарил по интернету и нашел код, где используется nextrowset
<?php
$sql = 'CALL multiple_rowsets()';
$stmt = $conn->query($sql);
$i = 1;
do {
$rowset = $stmt->fetchAll(PDO::FETCH_NUM);
if ($rowset) {
printResultSet($rowset, $i);
}
$i++;
} while ($stmt->nextRowset());
function printResultSet(&$rowset, $i) {
print "Result set $i:\n";
foreach ($rowset as $row) {
foreach ($row as $col) {
print $col . "\t";
}
print "\n";
}
print "\n";
}
?>
Проблема в том, что первую результирующую таблицу он нормально фетчит, а следующие не хочет(((
NextRowset выдает FALSE, следовательно ему кажется, что больше результирующих таблиц нет, а на самом деле это не так....
В чем может быть проблема? Какие настройки PDO за это отвечают? Или может быть у меня глючная версия драйвера?
зы.... PHP 5.2.10, apache 1.3.333 (Win 32), MYSQL 5.1.35, PDO mysql 5.0.51a | |
|
|