Det viser sig, at du skal bruge PDOStatement::nextRowset
.
$stmt = $db->query("SELECT 1; SELECT 2;");
$stmt->nextRowset();
var_dump( $stmt->fetchAll(PDO::FETCH_ASSOC) );
Dette vil returnere resultatet for den anden forespørgsel.
Det er en lidt mærkelig implementering. Det ville helt sikkert være nemmere, hvis multi-query-sætning bare ville returnere begge resultatsæt under ét array. Fordelen er dog, at denne implementering gør det muligt at hente hver forespørgsel ved hjælp af forskellige FETCH-stile .