Update 2018:DEV's beschouwen dit niet als een bug, maar als bedoeld gedrag. Dus PHP-gebruikers moeten daarmee leven, het rapport is gesloten voor eventuele toekomstige vragen...
Dit is vaak gemeld als een bug met PDO
:https://bugs.php.net/bug.php?id=61613
Er wordt alleen een uitzondering gegenereerd als de FIRST Verklaring is ongeldig. Als de eerste verklaring soepel verloopt, krijgt u geen foutmelding - En uw eerste verklaring is geldig:
INSERT INTO `a` (`b`, `c`) VALUES
(1, 1),
(2, 2),
(3, 2);
als tijdelijke oplossing - of volgens gebruiker verwijderd de juiste manier om het te doen - u moet de rijensets één voor één verwerken (overgenomen uit de opmerkingen over bugrapporten):
$pdo->beginTransaction();
try {
$statement = $pdo->prepare($sql);
$statement->execute();
while ($statement->nextRowset()) {/* https://bugs.php.net/bug.php?id=61613 */};
$pdo->commit();
} catch (\PDOException $e) {
$pdo->rollBack();
throw $e;
}