Heim  >  Fragen und Antworten  >  Hauptteil

Verwendung von mit PHP PDO vorbereiteten Anweisungen für Aktualisierungsvorgänge

<p>Ich versuche, meine Datenbank mit der folgenden Abfrage zu aktualisieren: </p> <pre class="brush:php;toolbar:false;">$sth = "UPDATE rpacks SET rpacks_location VALUES (:location) WHERE rpacks_id = (:id)"; $q = $conn->prepare($sth); $q->execute(array(':location'=>$location, ':id'=>$id));</pre> <p><b>Aber ich erhalte diese Fehlermeldung</b></p> <p><code>Schwerwiegender Fehler: Nicht abgefangene Ausnahme „PDOException“ mit der Meldung „SQLSTATE[42000]: Syntaxfehler oder Zugriffsverletzung: 1064“ Es liegt ein Fehler in Ihrer SQL-Syntax vor. Überprüfen Sie das Handbuch auf die richtige Syntax 'VALUES ('test') WHERE rpacks_id = ('2')' in Zeile 1 von </code></p>
P粉668019339P粉668019339444 Tage vor419

Antworte allen(2)Ich werde antworten

  • P粉315680565

    P粉3156805652023-08-25 17:13:59

    更改为:

    $sth = "更新 rpacks SET rpacks_location = :location WHERE rpacks_id = :id";

    Antwort
    0
  • P粉248602298

    P粉2486022982023-08-25 13:33:14

    您的 update 查询中存在错误,因为您使用了 insert 查询语法。

    以下是正确的查询:

    $sql = "UPDATE rpacks SET rpacks_location = :location WHERE rpacks_id = :id";
    $stmt = $conn->prepare($sql);
    $stmt->execute([':location'=>$location, ':id'=>$id]);

    参考: http://dev.mysql.com/doc/refman/5.0/ en/update.html

    Antwort
    0
  • StornierenAntwort