Heim >Datenbank >MySQL-Tutorial >Wie kann ich eine Tabellen-ID über parametrisiertes SELECT abrufen und für ein INSERT mit PDO verwenden?

Wie kann ich eine Tabellen-ID über parametrisiertes SELECT abrufen und für ein INSERT mit PDO verwenden?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-04 16:40:13215Durchsuche

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

PDO: Parametrisierte SELECT-Abfrage zum Abrufen der Tabellen-ID

In diesem Szenario versuchen wir, die ID aus einer Tabelle basierend auf einem Namen abzurufen Parameter und bestimmen Sie den Erfolg einer INSERT-Operation mithilfe dieser ID.

Um dies mithilfe einer parametrisierten SELECT-Abfrage mit PDO zu erreichen, Befolgen Sie diese Schritte:

  1. Initialisieren Sie ein neues PDO-Objekt:
$db = new PDO("...");
  1. Bereiten Sie die SELECT-Abfrage vor:
$statement = $db->prepare("SELECT id FROM some_table WHERE name = :name");
  1. Führen Sie die Anweisung mit dem Namen aus Parameter:
$statement->execute([':name' => "Jimbo"]);
  1. Erhalten Sie die ID aus dem Ergebnis:
$row = $statement->fetch();
$id = $row['id'];
  1. Bereiten Sie die INSERT-Abfrage vor:
$statement = $db->prepare("INSERT INTO some_other_table (some_id) VALUES (:some_id)");
  1. Führen Sie die INSERT-Anweisung mit den abgerufenen Daten aus ID:
$statement->execute([':some_id' => $id]);
  1. Um eine ordnungsgemäße Fehlerbehandlung sicherzustellen, legen Sie PDO so fest, dass Ausnahmen ausgelöst werden:
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Durch Befolgen dieser Schritte können Sie effizient arbeiten eine parametrisierte SELECT-Abfrage und verwenden Sie die abgerufene ID für eine nachfolgende INSERT-Operation in einer anderen Tabelle.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Tabellen-ID über parametrisiertes SELECT abrufen und für ein INSERT mit PDO verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn