Heim >Datenbank >MySQL-Tutorial >Warum führt meine MySQL-UPDATE-Abfrage über mehrere Tabellen hinweg zu einem Fehler „Unbekannte Spalte'?
Stößt du beim Versuch einer Aktualisierungsabfrage auf MySQL-Fehler #1054? Hier ist der Grund:
Die bereitgestellte Abfrage versucht, zwei Tabellen, MASTER_USER_PROFILE und TRAN_USER_BRANCH, mithilfe der Syntax zu aktualisieren:
UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH SET MASTER_USER_PROFILE.fellow='y' WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID AND TRAN_USER_BRANCH.BRANCH_ID = 17
Bei der Durchführung einer Aktualisierung über mehrere Tabellen hinweg ist es jedoch wichtig, Folgendes zu verwenden: die richtige Syntax. In diesem Fall tritt der Fehler „Unbekannte Spalte ‚y‘ in ‚Feldliste‘“ auf, weil MySQL den Wert „y“ aufgrund der ihn umgebenden einfachen Anführungszeichen als Spaltennamen interpretiert.
Um dieses Problem zu beheben, sollte der Wert „y“ in doppelte Anführungszeichen oder mit Backticks (`) eingeschlossen werden, wie unten gezeigt Code:
UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH SET MASTER_USER_PROFILE.fellow="y" WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID AND TRAN_USER_BRANCH.BRANCH_ID = 17;
Durch Anwenden dieser Korrektur interpretiert MySQL „y“ korrekt als Wert, um die andere Spalte von MASTER_USER_PROFILE zu aktualisieren.
Zu vermeiden Um solche Fehler in Zukunft zu vermeiden, ist es wichtig, die richtigen Zitierkonventionen einzuhalten. Für Werte, Zeichenfolgen und Ähnliches sollten einfache oder doppelte Anführungszeichen verwendet werden, während Backticks für Spaltennamen reserviert werden sollten.
Das obige ist der detaillierte Inhalt vonWarum führt meine MySQL-UPDATE-Abfrage über mehrere Tabellen hinweg zu einem Fehler „Unbekannte Spalte'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!