Mysql
 sql >> Base de données >  >> RDS >> Mysql

PHP MYSQL PDO -> Fatal Error 23000 même si une procédure spéciale est en place

(Mise à niveau vers une réponse )

Ressemble à ce bogue , qui est toujours ouvert après presque cinq ans; essayez plutôt :

while (true) {
  try {
    $row = $qry_bat->fetch(PDO::FETCH_ASSOC);
    if (!$row) break;
    $ins_db->execute(array(...));
    $newOnes++;
  }
  catch (PDOException $e) {
    if ($e->getCode() != 23000) {
      echo '<span class="msg-alert">'.$e->getMessage().'</span>';
    } else {
      $doublons++;
    }
  }
}