Maison >base de données >tutoriel mysql >Comment récupérer un ID de table via SELECT paramétré et l'utiliser pour un INSERT avec PDO ?

Comment récupérer un ID de table via SELECT paramétré et l'utiliser pour un INSERT avec PDO ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-04 16:40:13216parcourir

How to Retrieve a Table ID via Parameterized SELECT and Use It for an INSERT with PDO?

PDO : Requête SELECT paramétrée pour la récupération de l'ID de table

Dans ce scénario, nous cherchons à récupérer l'ID d'une table en fonction d'un nom paramètre et déterminez le succès d'une opération INSERT à l'aide de cet ID.

Pour accomplir cela à l'aide d'une requête SELECT paramétrée avec PDO, suivez ces étapes :

  1. Initialiser un nouvel objet PDO :
$db = new PDO("...");
  1. Préparer la requête SELECT :
$statement = $db->prepare("SELECT id FROM some_table WHERE name = :name");
  1. Exécutez l'instruction avec le nom paramètre :
$statement->execute([':name' => "Jimbo"]);
  1. Obtenir l'ID à partir du résultat :
$row = $statement->fetch();
$id = $row['id'];
  1. Préparer la requête INSERT :
$statement = $db->prepare("INSERT INTO some_other_table (some_id) VALUES (:some_id)");
  1. Exécutez l'instruction INSERT avec le fichier récupéré ID :
$statement->execute([':some_id' => $id]);
  1. Pour garantir une gestion appropriée des erreurs, configurez PDO pour qu'il lève des exceptions :
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

En suivant ces étapes, vous pouvez effectuer efficacement une requête SELECT paramétrée et utiliser l'ID récupéré pour une opération INSERT ultérieure dans une autre table.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn