MySQL-Abfrage setzt Feld auf 0 statt leere Zeichenfolge
-
05-07-2019 - |
Frage
ist das ein Rätsel mir. Ich habe eine MySQL-Abfrage, obwohl PDO ausgeführt werden:
$stmt = $db->prepare( "UPDATE member SET acode='' AND status='active' WHERE username=:u" );
$stmt->bindValue( ':u', $member->username, PDO::PARAM_STR );
$stmt->execute();
Das acode
Feld wird aus irgendeinem Grunde auf 0 gesetzt. Es wurde erstellt mit
`acode` varchar(8) NOT NULL
Gibt es etwas Besonderes ich tun muss, wenn vorbereitete Anweisungen?
Lösung
Gidday,
Das Problem kommt mit diesem Teil der Anfrage:
SET acode='' AND status='active'
das und macht diese in die boolean Überprüfung der ‚‘ AND status = ‚aktiv‘, die auf 0 Ändern Sie Ihre Abfrage auswertet:
SET acode='', status='active'
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow