Récupération du dernier ID inséré avec PDO
Dans PDO, obtenir l'ID de la dernière ligne insérée est une tâche importante qui revient fréquemment. Examinons le problème présenté dans la question et explorons comment y parvenir efficacement.
Le problème survient lorsque l'on tente d'utiliser la fonction LAST_INSERT_ID() comme appel PHP direct. Cela entraîne une erreur, car LAST_INSERT_ID() n'est pas une fonction PHP.
La solution réside dans l'utilisation de la méthode PDO::lastInsertId(). Voici un exemple de comment l'utiliser :
$stmt = $db->prepare("..."); $stmt->execute(); $id = $db->lastInsertId();
Cette méthode renverra l'ID de la dernière ligne insérée pour la connexion $db spécifiée.
Si vous préférez utiliser SQL directement, vous pouvez récupérer le dernier ID inséré à l'aide d'une simple requête SELECT :
$stmt = $db->query("SELECT LAST_INSERT_ID()"); $lastId = $stmt->fetchColumn();
Cette requête renverra le dernier ID inséré comme première colonne du résultat row.
Que vous optiez pour la méthode PDO::lastInsertId() ou l'approche de requête SQL directe, les deux méthodes récupèrent efficacement l'ID du dernier enregistrement inséré.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!